You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2022/08/12 18:58:18 UTC

[maven-pmd-plugin] 01/02: First shot

This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch MPMD-349
in repository https://gitbox.apache.org/repos/asf/maven-pmd-plugin.git

commit fe605b411b1f39f48ff5f89fc1838e4c2e77d2a3
Author: Michael Osipov <mi...@apache.org>
AuthorDate: Thu Aug 11 22:28:46 2022 +0200

    First shot
---
 pom.xml                                            |  8 +--
 src/it/MPMD-270-325-JDK11/pom.xml                  |  2 +-
 src/it/MPMD-280-JDK12/pom.xml                      |  2 +-
 src/it/MPMD-289-format-html-check/pom.xml          |  2 +-
 src/it/MPMD-295-JDK13/pom.xml                      |  2 +-
 src/it/MPMD-302-JDK14/pom.xml                      |  2 +-
 src/it/MPMD-302-JDK15/pom.xml                      |  2 +-
 src/it/MPMD-304-toolchain-support/pom.xml          |  2 +-
 src/it/MPMD-312-JDK16/pom.xml                      |  2 +-
 src/it/MPMD-312-JDK17/pom.xml                      |  2 +-
 src/it/MPMD-332-JDK18/pom.xml                      |  2 +-
 src/it/MPMD-348-JDK19/pom.xml                      |  2 +-
 src/it/empty-rulesets/pom.xml                      |  2 +-
 src/it/mpmd-168-empty-report/pom.xml               |  2 +-
 src/it/mpmd-168/pom.xml                            |  2 +-
 .../maven/plugins/pmd/AbstractPmdReport.java       | 67 +---------------------
 .../org/apache/maven/plugins/pmd/CpdReport.java    | 36 +++---------
 .../org/apache/maven/plugins/pmd/PmdReport.java    | 35 +++--------
 .../apache/maven/plugins/pmd/CpdReportTest.java    |  4 +-
 .../apache/maven/plugins/pmd/PmdReportTest.java    |  2 +-
 .../cpd-custom-configuration-plugin-config.xml     |  3 +-
 .../cpd-txt-format-configuration-plugin-config.xml |  3 +-
 .../custom-configuration-plugin-config.xml         |  7 ++-
 .../custom-configuration/skip-plugin-config.xml    |  2 +-
 .../cpd-default-configuration-plugin-config.xml    |  4 +-
 .../cpd-encoding-configuration-plugin-config.xml   |  2 +-
 .../cpd-javascript-plugin-config.xml               |  5 +-
 .../cpd-jsp-plugin-config.xml                      |  5 +-
 ...-cpd-exclusions-configuration-plugin-config.xml |  5 +-
 ...pd-report-include-xml-in-site-plugin-config.xml |  3 +-
 .../default-configuration-plugin-config.xml        |  5 +-
 .../javascript-configuration-plugin-config.xml     |  3 +-
 .../jsp-configuration-plugin-config.xml            |  3 +-
 .../pmd-report-custom-rules.xml                    |  3 +-
 ...md-report-include-xml-in-site-plugin-config.xml |  3 +-
 ...pmd-report-no-render-violations-by-priority.xml |  3 +-
 ...port-not-render-rule-priority-plugin-config.xml |  5 +-
 ...-pmd-exclusions-configuration-plugin-config.xml |  5 +-
 .../pmd-report-resolve-rulesets.xml                |  3 +-
 .../pmd-with-analysis-cache-plugin-config.xml      |  3 +-
 ...with-suppressMarker-no-render-plugin-config.xml |  3 +-
 .../pmd-with-suppressMarker-plugin-config.xml      |  3 +-
 .../cpd-empty-report-plugin-config.xml             |  3 +-
 .../cpd-skip-empty-report-plugin-config.xml        |  2 +-
 .../empty-report/empty-report-plugin-config.xml    |  3 +-
 .../skip-empty-report-plugin-config.xml            |  2 +-
 .../pmd-exclude-roots-plugin-config.xml            |  3 +-
 .../invalid-format-plugin-config.xml               |  2 +-
 .../invalid-target-jdk-plugin-config.xml           |  2 +-
 ...md-processing-error-no-report-plugin-config.xml |  3 +-
 .../pmd-processing-error-plugin-config.xml         |  2 +-
 .../pmd-processing-error-skip-plugin-config.xml    |  3 +-
 52 files changed, 105 insertions(+), 181 deletions(-)

diff --git a/pom.xml b/pom.xml
index 6e1b505..1926d5e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -91,8 +91,8 @@ under the License.
     <javaVersion>8</javaVersion><!-- Because PMD 6.35.0+ requires Java 8 -->
     <pmdVersion>6.48.0</pmdVersion>
     <slf4jVersion>1.7.36</slf4jVersion>
-    <sitePluginVersion>3.12.0</sitePluginVersion>
-    <projectInfoReportsPluginVersion>3.3.0</projectInfoReportsPluginVersion>
+    <sitePluginVersion>3.12.1</sitePluginVersion>
+    <projectInfoReportsPluginVersion>3.4.1</projectInfoReportsPluginVersion>
     <project.build.outputTimestamp>2022-05-31T17:37:31Z</project.build.outputTimestamp>
   </properties>
 
@@ -209,12 +209,12 @@ under the License.
     <dependency>
       <groupId>org.apache.maven.reporting</groupId>
       <artifactId>maven-reporting-api</artifactId>
-      <version>3.1.0</version>
+      <version>3.1.1</version>
     </dependency>
     <dependency>
       <groupId>org.apache.maven.reporting</groupId>
       <artifactId>maven-reporting-impl</artifactId>
-      <version>3.1.0</version>
+      <version>3.2.0</version>
     </dependency>
     <dependency>
       <groupId>org.apache.maven.shared</groupId>
diff --git a/src/it/MPMD-270-325-JDK11/pom.xml b/src/it/MPMD-270-325-JDK11/pom.xml
index e79e700..428a00b 100644
--- a/src/it/MPMD-270-325-JDK11/pom.xml
+++ b/src/it/MPMD-270-325-JDK11/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-280-JDK12/pom.xml b/src/it/MPMD-280-JDK12/pom.xml
index d7046e7..8ddf8e9 100644
--- a/src/it/MPMD-280-JDK12/pom.xml
+++ b/src/it/MPMD-280-JDK12/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-289-format-html-check/pom.xml b/src/it/MPMD-289-format-html-check/pom.xml
index 9d44fe0..2280de0 100644
--- a/src/it/MPMD-289-format-html-check/pom.xml
+++ b/src/it/MPMD-289-format-html-check/pom.xml
@@ -41,7 +41,7 @@ under the License.
           <skip>false</skip>
           <failOnViolation>true</failOnViolation>
           <failurePriority>4</failurePriority>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
           <skipEmptyReport>false</skipEmptyReport>
           <format>html</format>
diff --git a/src/it/MPMD-295-JDK13/pom.xml b/src/it/MPMD-295-JDK13/pom.xml
index 4e8161a..cbb82a7 100644
--- a/src/it/MPMD-295-JDK13/pom.xml
+++ b/src/it/MPMD-295-JDK13/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-302-JDK14/pom.xml b/src/it/MPMD-302-JDK14/pom.xml
index 9b7c1c7..4d2d208 100644
--- a/src/it/MPMD-302-JDK14/pom.xml
+++ b/src/it/MPMD-302-JDK14/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-302-JDK15/pom.xml b/src/it/MPMD-302-JDK15/pom.xml
index 8db2e8b..d8d032b 100644
--- a/src/it/MPMD-302-JDK15/pom.xml
+++ b/src/it/MPMD-302-JDK15/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-304-toolchain-support/pom.xml b/src/it/MPMD-304-toolchain-support/pom.xml
index 5ea8c4c..a2205ce 100644
--- a/src/it/MPMD-304-toolchain-support/pom.xml
+++ b/src/it/MPMD-304-toolchain-support/pom.xml
@@ -54,7 +54,7 @@ under the License.
           <failOnViolation>false</failOnViolation>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>10</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-312-JDK16/pom.xml b/src/it/MPMD-312-JDK16/pom.xml
index 14983bf..75a1e18 100644
--- a/src/it/MPMD-312-JDK16/pom.xml
+++ b/src/it/MPMD-312-JDK16/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-312-JDK17/pom.xml b/src/it/MPMD-312-JDK17/pom.xml
index 3064ae2..127a72c 100644
--- a/src/it/MPMD-312-JDK17/pom.xml
+++ b/src/it/MPMD-312-JDK17/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-332-JDK18/pom.xml b/src/it/MPMD-332-JDK18/pom.xml
index 5f45389..d18dc78 100644
--- a/src/it/MPMD-332-JDK18/pom.xml
+++ b/src/it/MPMD-332-JDK18/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/MPMD-348-JDK19/pom.xml b/src/it/MPMD-348-JDK19/pom.xml
index 32ea2ec..c7e834c 100644
--- a/src/it/MPMD-348-JDK19/pom.xml
+++ b/src/it/MPMD-348-JDK19/pom.xml
@@ -58,7 +58,7 @@ under the License.
           <failurePriority>4</failurePriority>
           <printFailingErrors>true</printFailingErrors>
           <targetJdk>${java.version}</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <executions>
diff --git a/src/it/empty-rulesets/pom.xml b/src/it/empty-rulesets/pom.xml
index aa727dd..4e21006 100644
--- a/src/it/empty-rulesets/pom.xml
+++ b/src/it/empty-rulesets/pom.xml
@@ -52,7 +52,7 @@ under the License.
           <failOnViolation>true</failOnViolation>
           <failurePriority>4</failurePriority>
           <targetJdk>1.7</targetJdk>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
           <excludes>
             <exclude>**/*Bean.java</exclude>
diff --git a/src/it/mpmd-168-empty-report/pom.xml b/src/it/mpmd-168-empty-report/pom.xml
index 1d0f038..3b5764c 100644
--- a/src/it/mpmd-168-empty-report/pom.xml
+++ b/src/it/mpmd-168-empty-report/pom.xml
@@ -51,7 +51,7 @@ under the License.
         <configuration>
           <verbose>true</verbose>
           <minimumTokens>25</minimumTokens>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <failOnViolation>false</failOnViolation> <!-- force execution of both goals, will be checked with verify-script -->
           <skipPmdError>false</skipPmdError>
 <!--          <skipEmptyReport>false</skipEmptyReport> skipEmptyReport is false by default since 3.13.0 -->
diff --git a/src/it/mpmd-168/pom.xml b/src/it/mpmd-168/pom.xml
index 7573801..490c4fb 100644
--- a/src/it/mpmd-168/pom.xml
+++ b/src/it/mpmd-168/pom.xml
@@ -51,7 +51,7 @@ under the License.
         <configuration>
           <verbose>true</verbose>
           <minimumTokens>25</minimumTokens>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <failOnViolation>false</failOnViolation> <!-- force execution of both goals, will be checked with verify-script -->
           <skipPmdError>false</skipPmdError>
           <skipEmptyReport>true</skipEmptyReport>
diff --git a/src/main/java/org/apache/maven/plugins/pmd/AbstractPmdReport.java b/src/main/java/org/apache/maven/plugins/pmd/AbstractPmdReport.java
index afdce98..fcc9c2d 100644
--- a/src/main/java/org/apache/maven/plugins/pmd/AbstractPmdReport.java
+++ b/src/main/java/org/apache/maven/plugins/pmd/AbstractPmdReport.java
@@ -49,7 +49,6 @@ import org.apache.maven.toolchain.Toolchain;
 import org.apache.maven.toolchain.ToolchainManager;
 import org.codehaus.plexus.util.FileUtils;
 import org.codehaus.plexus.util.PathTool;
-import org.codehaus.plexus.util.ReaderFactory;
 import org.codehaus.plexus.util.StringUtils;
 
 import net.sourceforge.pmd.PMDVersion;
@@ -73,14 +72,6 @@ public abstract class AbstractPmdReport
     @Parameter( property = "project.build.directory", required = true )
     protected File targetDirectory;
 
-    /**
-     * The output directory for the final HTML report. Note that this parameter is only evaluated if the goal is run
-     * directly from the command line or during the default lifecycle. If the goal is run indirectly as part of a site
-     * generation, the output directory configured in the Maven Site Plugin is used instead.
-     */
-    @Parameter( property = "project.reporting.outputDirectory", required = true )
-    protected File outputDirectory;
-
     /**
      * Set the output format type, in addition to the HTML report. Must be one of: "none", "csv", "xml", "txt" or the
      * full class name of the PMD renderer to use. See the net.sourceforge.pmd.renderers package javadoc for available
@@ -172,22 +163,6 @@ public abstract class AbstractPmdReport
     @Deprecated
     protected boolean aggregate;
 
-    /**
-     * The file encoding to use when reading the Java sources.
-     *
-     * @since 2.3
-     */
-    @Parameter( property = "encoding", defaultValue = "${project.build.sourceEncoding}" )
-    private String sourceEncoding;
-
-    /**
-     * The file encoding when writing non-HTML reports.
-     *
-     * @since 2.5
-     */
-    @Parameter( property = "outputEncoding", defaultValue = "${project.reporting.outputEncoding}" )
-    private String outputEncoding;
-
     /**
      * Whether to include the xml files generated by PMD/CPD in the site.
      *
@@ -271,12 +246,6 @@ public abstract class AbstractPmdReport
     // Read-only parameters
     // ----------------------------------------------------------------------
 
-    /**
-     * The project to analyse.
-     */
-    @Parameter( defaultValue = "${project}", readonly = true, required = true )
-    protected MavenProject project;
-
     /**
      * The projects in the reactor for aggregation report.
      */
@@ -290,12 +259,6 @@ public abstract class AbstractPmdReport
     @Parameter( defaultValue = "${session}", required = true, readonly = true )
     protected MavenSession session;
 
-    /**
-     * Site rendering component for generating the HTML report.
-     */
-    @Component
-    private Renderer siteRenderer;
-
     @Component
     private ToolchainManager toolchainManager;
 
@@ -588,32 +551,6 @@ public abstract class AbstractPmdReport
         return true;
     }
 
-    /**
-     * {@inheritDoc}
-     */
-    @Override
-    protected String getOutputDirectory()
-    {
-        return outputDirectory.getAbsolutePath();
-    }
-
-    protected String getSourceEncoding()
-    {
-        return sourceEncoding;
-    }
-
-    /**
-     * Gets the effective reporting output files encoding.
-     *
-     * @return The effective reporting output file encoding, never <code>null</code>.
-     * @since 2.5
-     */
-    @Override
-    protected String getOutputEncoding()
-    {
-        return ( outputEncoding != null ) ? outputEncoding : ReaderFactory.UTF_8;
-    }
-
     protected String determineCurrentRootLogLevel()
     {
         String logLevel = System.getProperty( "org.slf4j.simpleLogger.defaultLogLevel" );
@@ -694,9 +631,9 @@ public abstract class AbstractPmdReport
 
     /**
      * Recursively add the modules of the aggregatedProject to the set of aggregatedModules.
-     * 
+     *
      * @param aggregatedProject the project being aggregated
-     * @param reactorProjectsMap map of (still) available reactor projects 
+     * @param reactorProjectsMap map of (still) available reactor projects
      * @throws MavenReportException if any
      */
     private Set<MavenProject> modulesForAggregatedProject( MavenProject aggregatedProject,
diff --git a/src/main/java/org/apache/maven/plugins/pmd/CpdReport.java b/src/main/java/org/apache/maven/plugins/pmd/CpdReport.java
index 7bb71f5..dadabf2 100644
--- a/src/main/java/org/apache/maven/plugins/pmd/CpdReport.java
+++ b/src/main/java/org/apache/maven/plugins/pmd/CpdReport.java
@@ -134,36 +134,16 @@ public class CpdReport
     public void executeReport( Locale locale )
         throws MavenReportException
     {
+        ClassLoader origLoader = Thread.currentThread().getContextClassLoader();
         try
         {
-            execute( locale );
+            Thread.currentThread().setContextClassLoader( this.getClass().getClassLoader() );
+
+            generateMavenSiteReport( locale );
         }
         finally
         {
-            if ( getSink() != null )
-            {
-                getSink().close();
-            }
-        }
-    }
-
-    private void execute( Locale locale )
-        throws MavenReportException
-    {
-        if ( !skip && canGenerateReport() )
-        {
-            ClassLoader origLoader = Thread.currentThread().getContextClassLoader();
-            try
-            {
-                Thread.currentThread().setContextClassLoader( this.getClass().getClassLoader() );
-
-                generateMavenSiteReport( locale );
-            }
-            finally
-            {
-                Thread.currentThread().setContextClassLoader( origLoader );
-            }
-
+            Thread.currentThread().setContextClassLoader( origLoader );
         }
     }
 
@@ -257,7 +237,7 @@ public class CpdReport
         }
         catch ( UnsupportedEncodingException e )
         {
-            throw new MavenReportException( "Encoding '" + getSourceEncoding() + "' is not supported.", e );
+            throw new MavenReportException( "Encoding '" + getInputEncoding() + "' is not supported.", e );
         }
         catch ( IOException e )
         {
@@ -276,10 +256,10 @@ public class CpdReport
         throws UnsupportedEncodingException
     {
         String encoding = WriterFactory.FILE_ENCODING;
-        if ( StringUtils.isNotEmpty( getSourceEncoding() ) )
+        if ( StringUtils.isNotEmpty( getInputEncoding() ) )
         {
 
-            encoding = getSourceEncoding();
+            encoding = getInputEncoding();
             // test encoding as CPD will convert exception into a RuntimeException
             WriterFactory.newWriter( new ByteArrayOutputStream(), encoding );
 
diff --git a/src/main/java/org/apache/maven/plugins/pmd/PmdReport.java b/src/main/java/org/apache/maven/plugins/pmd/PmdReport.java
index b373bee..2c34561 100644
--- a/src/main/java/org/apache/maven/plugins/pmd/PmdReport.java
+++ b/src/main/java/org/apache/maven/plugins/pmd/PmdReport.java
@@ -287,35 +287,16 @@ public class PmdReport
     public void executeReport( Locale locale )
         throws MavenReportException
     {
+        ClassLoader origLoader = Thread.currentThread().getContextClassLoader();
         try
         {
-            execute( locale );
+            Thread.currentThread().setContextClassLoader( this.getClass().getClassLoader() );
+
+            generateMavenSiteReport( locale );
         }
         finally
         {
-            if ( getSink() != null )
-            {
-                getSink().close();
-            }
-        }
-    }
-
-    private void execute( Locale locale )
-        throws MavenReportException
-    {
-        if ( !skip && canGenerateReport() )
-        {
-            ClassLoader origLoader = Thread.currentThread().getContextClassLoader();
-            try
-            {
-                Thread.currentThread().setContextClassLoader( this.getClass().getClassLoader() );
-
-                generateMavenSiteReport( locale );
-            }
-            finally
-            {
-                Thread.currentThread().setContextClassLoader( origLoader );
-            }
+            Thread.currentThread().setContextClassLoader( origLoader );
         }
     }
 
@@ -382,7 +363,7 @@ public class PmdReport
         request.setLanguageAndVersion( language, targetJdk );
         request.setRulesets( resolveRulesets() );
         request.setAuxClasspath( typeResolution ? determineAuxClasspath() : null );
-        request.setSourceEncoding( getSourceEncoding() );
+        request.setSourceEncoding( getInputEncoding() );
         request.addFiles( filesToProcess.keySet() );
         request.setMinimumPriority( minimumPriority );
         request.setSuppressMarker( suppressMarker );
@@ -412,9 +393,9 @@ public class PmdReport
         pmdResult = PmdExecutor.execute( request );
     }
 
-    protected String getSourceEncoding()
+    protected String getInputEncoding()
     {
-        String encoding = super.getSourceEncoding();
+        String encoding = super.getInputEncoding();
         if ( StringUtils.isEmpty( encoding ) )
         {
             encoding = ReaderFactory.FILE_ENCODING;
diff --git a/src/test/java/org/apache/maven/plugins/pmd/CpdReportTest.java b/src/test/java/org/apache/maven/plugins/pmd/CpdReportTest.java
index 4970975..7544748 100644
--- a/src/test/java/org/apache/maven/plugins/pmd/CpdReportTest.java
+++ b/src/test/java/org/apache/maven/plugins/pmd/CpdReportTest.java
@@ -63,6 +63,8 @@ public class CpdReportTest
             new File( getBasedir(),
                       "src/test/resources/unit/default-configuration/cpd-default-configuration-plugin-config.xml" );
         CpdReport mojo = (CpdReport) lookupMojo( "cpd", testPom );
+        setVariableValueToObject( mojo, "remoteRepositories", mojo.getProject().getRemoteArtifactRepositories() );
+        setVariableValueToObject( mojo, "pluginRepositories", mojo.getProject().getPluginArtifactRepositories() );
         mojo.execute();
 
         // check if the CPD files were generated
@@ -166,7 +168,7 @@ public class CpdReportTest
             File testPom =
                 new File( getBasedir(), "src/test/resources/unit/invalid-format/cpd-invalid-format-plugin-config.xml" );
             CpdReport mojo = (CpdReport) lookupMojo( "cpd", testPom );
-            setVariableValueToObject( mojo, "compileSourceRoots", mojo.project.getCompileSourceRoots() );
+            setVariableValueToObject( mojo, "compileSourceRoots", mojo.getProject().getCompileSourceRoots() );
             mojo.execute();
 
             fail( "MavenReportException must be thrown" );
diff --git a/src/test/java/org/apache/maven/plugins/pmd/PmdReportTest.java b/src/test/java/org/apache/maven/plugins/pmd/PmdReportTest.java
index c8ddae3..4aeca37 100644
--- a/src/test/java/org/apache/maven/plugins/pmd/PmdReportTest.java
+++ b/src/test/java/org/apache/maven/plugins/pmd/PmdReportTest.java
@@ -411,7 +411,7 @@ public class PmdReportTest
             File testPom =
                 new File( getBasedir(), "src/test/resources/unit/invalid-format/invalid-format-plugin-config.xml" );
             PmdReport mojo = (PmdReport) lookupMojo( "pmd", testPom );
-            setVariableValueToObject( mojo, "compileSourceRoots", mojo.project.getCompileSourceRoots() );
+            setVariableValueToObject( mojo, "compileSourceRoots", mojo.getProject().getCompileSourceRoots() );
             mojo.executeReport( Locale.ENGLISH );
 
             fail( "Must throw MavenReportException." );
diff --git a/src/test/resources/unit/custom-configuration/cpd-custom-configuration-plugin-config.xml b/src/test/resources/unit/custom-configuration/cpd-custom-configuration-plugin-config.xml
index e963134..3595589 100644
--- a/src/test/resources/unit/custom-configuration/cpd-custom-configuration-plugin-config.xml
+++ b/src/test/resources/unit/custom-configuration/cpd-custom-configuration-plugin-config.xml
@@ -36,6 +36,7 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.CustomConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/custom-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/custom-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <format>csv</format>
           <linkXRef>false</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/custom-configuration/target/site/xref</xrefLocation>
@@ -46,7 +47,7 @@ under the License.
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/custom-configuration/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
         </configuration>
       </plugin>
     </plugins>
diff --git a/src/test/resources/unit/custom-configuration/cpd-txt-format-configuration-plugin-config.xml b/src/test/resources/unit/custom-configuration/cpd-txt-format-configuration-plugin-config.xml
index 5ea5415..07bc7fa 100644
--- a/src/test/resources/unit/custom-configuration/cpd-txt-format-configuration-plugin-config.xml
+++ b/src/test/resources/unit/custom-configuration/cpd-txt-format-configuration-plugin-config.xml
@@ -36,6 +36,7 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/custom-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/custom-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <format>txt</format>
           <linkXRef>false</linkXRef>
           <minimumTokens>30</minimumTokens>
@@ -43,7 +44,7 @@ under the License.
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/custom-configuration/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
         </configuration>
       </plugin>
     </plugins>
diff --git a/src/test/resources/unit/custom-configuration/custom-configuration-plugin-config.xml b/src/test/resources/unit/custom-configuration/custom-configuration-plugin-config.xml
index b99ab01..6129596 100644
--- a/src/test/resources/unit/custom-configuration/custom-configuration-plugin-config.xml
+++ b/src/test/resources/unit/custom-configuration/custom-configuration-plugin-config.xml
@@ -36,17 +36,18 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.CustomConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/custom-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/custom-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/custom-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>csv</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/custom-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>ISO-8859-1</sourceEncoding>
+          <inputEncoding>ISO-8859-1</inputEncoding>
           <rulesets>
             <ruleset>rulesets/java/maven-pmd-plugin-default.xml</ruleset>
             <ruleset>${basedir}/src/test/resources/unit/custom-configuration/resources/rulesets/custom.xml</ruleset>
           </rulesets>
           <targetJdk>1.4</targetJdk>
-          <minimumPriority>4</minimumPriority>          
+          <minimumPriority>4</minimumPriority>
           <excludes>
             <exclude>**/Sample.java</exclude>
             <exclude>**/AnotherSample.java</exclude>
@@ -54,7 +55,7 @@ under the License.
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/custom-configuration/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
         </configuration>
         <dependencies>
           <dependency>
diff --git a/src/test/resources/unit/custom-configuration/skip-plugin-config.xml b/src/test/resources/unit/custom-configuration/skip-plugin-config.xml
index 0705d31..44103a6 100644
--- a/src/test/resources/unit/custom-configuration/skip-plugin-config.xml
+++ b/src/test/resources/unit/custom-configuration/skip-plugin-config.xml
@@ -40,7 +40,7 @@ under the License.
           <format>csv</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/skip-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>ISO-8859-1</sourceEncoding>
+          <inputEncoding>ISO-8859-1</inputEncoding>
           <targetJdk>1.4</targetJdk>
           <minimumPriority>4</minimumPriority>          
           <skip>true</skip>
diff --git a/src/test/resources/unit/default-configuration/cpd-default-configuration-plugin-config.xml b/src/test/resources/unit/default-configuration/cpd-default-configuration-plugin-config.xml
index 4df189f..e57fe5d 100644
--- a/src/test/resources/unit/default-configuration/cpd-default-configuration-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/cpd-default-configuration-plugin-config.xml
@@ -36,15 +36,15 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <format>xml</format>
           <linkXRef>false</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
           <minimumTokens>100</minimumTokens>
-          
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
         </configuration>
       </plugin>
     </plugins>
diff --git a/src/test/resources/unit/default-configuration/cpd-encoding-configuration-plugin-config.xml b/src/test/resources/unit/default-configuration/cpd-encoding-configuration-plugin-config.xml
index ae0d780..a9bb04e 100644
--- a/src/test/resources/unit/default-configuration/cpd-encoding-configuration-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/cpd-encoding-configuration-plugin-config.xml
@@ -45,7 +45,7 @@ under the License.
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
 
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
         </configuration>
       </plugin>
     </plugins>
diff --git a/src/test/resources/unit/default-configuration/cpd-javascript-plugin-config.xml b/src/test/resources/unit/default-configuration/cpd-javascript-plugin-config.xml
index 3d7ad68..3c3c305 100644
--- a/src/test/resources/unit/default-configuration/cpd-javascript-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/cpd-javascript-plugin-config.xml
@@ -35,6 +35,7 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <format>xml</format>
           <linkXRef>false</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
@@ -43,11 +44,11 @@ under the License.
           <includes>
             <include>**/*.js</include>
           </includes>
-          
+
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
         </configuration>
       </plugin>
     </plugins>
diff --git a/src/test/resources/unit/default-configuration/cpd-jsp-plugin-config.xml b/src/test/resources/unit/default-configuration/cpd-jsp-plugin-config.xml
index 27ce220..9b4d104 100644
--- a/src/test/resources/unit/default-configuration/cpd-jsp-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/cpd-jsp-plugin-config.xml
@@ -35,6 +35,7 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <format>xml</format>
           <linkXRef>false</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
@@ -43,11 +44,11 @@ under the License.
           <includes>
             <include>**/*.jsp</include>
           </includes>
-          
+
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
         </configuration>
       </plugin>
     </plugins>
diff --git a/src/test/resources/unit/default-configuration/cpd-report-cpd-exclusions-configuration-plugin-config.xml b/src/test/resources/unit/default-configuration/cpd-report-cpd-exclusions-configuration-plugin-config.xml
index 83a5d45..4c8e203 100644
--- a/src/test/resources/unit/default-configuration/cpd-report-cpd-exclusions-configuration-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/cpd-report-cpd-exclusions-configuration-plugin-config.xml
@@ -36,15 +36,16 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <format>xml</format>
           <linkXRef>false</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
           <minimumTokens>100</minimumTokens>
-          
+
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <excludeFromFailureFile>${basedir}/src/test/resources/unit/excludes/my-exclude-cpd.properties</excludeFromFailureFile>
         </configuration>
       </plugin>
diff --git a/src/test/resources/unit/default-configuration/cpd-report-include-xml-in-site-plugin-config.xml b/src/test/resources/unit/default-configuration/cpd-report-include-xml-in-site-plugin-config.xml
index cccb881..1d867ea 100644
--- a/src/test/resources/unit/default-configuration/cpd-report-include-xml-in-site-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/cpd-report-include-xml-in-site-plugin-config.xml
@@ -36,6 +36,7 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <format>xml</format>
           <linkXRef>false</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
@@ -44,7 +45,7 @@ under the License.
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <includeXmlInSite>true</includeXmlInSite>
           <format>xml</format>
         </configuration>
diff --git a/src/test/resources/unit/default-configuration/default-configuration-plugin-config.xml b/src/test/resources/unit/default-configuration/default-configuration-plugin-config.xml
index f476e09..44bb010 100644
--- a/src/test/resources/unit/default-configuration/default-configuration-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/default-configuration-plugin-config.xml
@@ -36,12 +36,13 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
-          
+          <inputEncoding>UTF-8</inputEncoding>
+
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
diff --git a/src/test/resources/unit/default-configuration/javascript-configuration-plugin-config.xml b/src/test/resources/unit/default-configuration/javascript-configuration-plugin-config.xml
index a9f7c56..2445754 100644
--- a/src/test/resources/unit/default-configuration/javascript-configuration-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/javascript-configuration-plugin-config.xml
@@ -36,9 +36,10 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <language>javascript</language>
           <rulesets>
             <ruleset>/category/ecmascript/bestpractices.xml</ruleset>
diff --git a/src/test/resources/unit/default-configuration/jsp-configuration-plugin-config.xml b/src/test/resources/unit/default-configuration/jsp-configuration-plugin-config.xml
index 53b026a..0de5159 100644
--- a/src/test/resources/unit/default-configuration/jsp-configuration-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/jsp-configuration-plugin-config.xml
@@ -36,9 +36,10 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <language>jsp</language>
           <rulesets>
             <ruleset>/category/jsp/bestpractices.xml</ruleset>
diff --git a/src/test/resources/unit/default-configuration/pmd-report-custom-rules.xml b/src/test/resources/unit/default-configuration/pmd-report-custom-rules.xml
index 04c2c55..b5f9c4d 100644
--- a/src/test/resources/unit/default-configuration/pmd-report-custom-rules.xml
+++ b/src/test/resources/unit/default-configuration/pmd-report-custom-rules.xml
@@ -36,6 +36,7 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <rulesets>
             <ruleset>${basedir}/src/test/resources/unit/default-configuration/rulesets/custom-rules.xml</ruleset>
@@ -43,7 +44,7 @@ under the License.
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
diff --git a/src/test/resources/unit/default-configuration/pmd-report-include-xml-in-site-plugin-config.xml b/src/test/resources/unit/default-configuration/pmd-report-include-xml-in-site-plugin-config.xml
index 1963d89..a3a7961 100644
--- a/src/test/resources/unit/default-configuration/pmd-report-include-xml-in-site-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/pmd-report-include-xml-in-site-plugin-config.xml
@@ -36,9 +36,10 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <includeXmlInSite>true</includeXmlInSite>
 
         </configuration>
diff --git a/src/test/resources/unit/default-configuration/pmd-report-no-render-violations-by-priority.xml b/src/test/resources/unit/default-configuration/pmd-report-no-render-violations-by-priority.xml
index e224833..d7c9514 100644
--- a/src/test/resources/unit/default-configuration/pmd-report-no-render-violations-by-priority.xml
+++ b/src/test/resources/unit/default-configuration/pmd-report-no-render-violations-by-priority.xml
@@ -36,11 +36,12 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
diff --git a/src/test/resources/unit/default-configuration/pmd-report-not-render-rule-priority-plugin-config.xml b/src/test/resources/unit/default-configuration/pmd-report-not-render-rule-priority-plugin-config.xml
index 002ee55..9119d93 100644
--- a/src/test/resources/unit/default-configuration/pmd-report-not-render-rule-priority-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/pmd-report-not-render-rule-priority-plugin-config.xml
@@ -36,12 +36,13 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
-          
+          <inputEncoding>UTF-8</inputEncoding>
+
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
diff --git a/src/test/resources/unit/default-configuration/pmd-report-pmd-exclusions-configuration-plugin-config.xml b/src/test/resources/unit/default-configuration/pmd-report-pmd-exclusions-configuration-plugin-config.xml
index 3071f8e..5def1cf 100644
--- a/src/test/resources/unit/default-configuration/pmd-report-pmd-exclusions-configuration-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/pmd-report-pmd-exclusions-configuration-plugin-config.xml
@@ -36,12 +36,13 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
-          
+          <inputEncoding>UTF-8</inputEncoding>
+
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
diff --git a/src/test/resources/unit/default-configuration/pmd-report-resolve-rulesets.xml b/src/test/resources/unit/default-configuration/pmd-report-resolve-rulesets.xml
index 351ef8e..a36a855 100644
--- a/src/test/resources/unit/default-configuration/pmd-report-resolve-rulesets.xml
+++ b/src/test/resources/unit/default-configuration/pmd-report-resolve-rulesets.xml
@@ -36,6 +36,7 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <rulesets>
             <ruleset>${basedir}/src/test/resources/unit/default-configuration/rulesets/custom-rules.xml</ruleset>
@@ -49,7 +50,7 @@ under the License.
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
           </compileSourceRoots>
diff --git a/src/test/resources/unit/default-configuration/pmd-with-analysis-cache-plugin-config.xml b/src/test/resources/unit/default-configuration/pmd-with-analysis-cache-plugin-config.xml
index 142bc62..bc69b71 100644
--- a/src/test/resources/unit/default-configuration/pmd-with-analysis-cache-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/pmd-with-analysis-cache-plugin-config.xml
@@ -36,11 +36,12 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <analysisCache>true</analysisCache>
           <analysisCacheLocation>${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target/pmd/pmd.cache</analysisCacheLocation>
 
diff --git a/src/test/resources/unit/default-configuration/pmd-with-suppressMarker-no-render-plugin-config.xml b/src/test/resources/unit/default-configuration/pmd-with-suppressMarker-no-render-plugin-config.xml
index 1f94bf2..77c5484 100644
--- a/src/test/resources/unit/default-configuration/pmd-with-suppressMarker-no-render-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/pmd-with-suppressMarker-no-render-plugin-config.xml
@@ -36,11 +36,12 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
 
           <suppressMarker>SUPPRESSME</suppressMarker>
           <renderSuppressedViolations>false</renderSuppressedViolations>
diff --git a/src/test/resources/unit/default-configuration/pmd-with-suppressMarker-plugin-config.xml b/src/test/resources/unit/default-configuration/pmd-with-suppressMarker-plugin-config.xml
index 88d8a93..7c239be 100644
--- a/src/test/resources/unit/default-configuration/pmd-with-suppressMarker-plugin-config.xml
+++ b/src/test/resources/unit/default-configuration/pmd-with-suppressMarker-plugin-config.xml
@@ -36,11 +36,12 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/default-configuration/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/default-configuration/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/default-configuration/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
 
           <suppressMarker>SUPPRESSME</suppressMarker>
 
diff --git a/src/test/resources/unit/empty-report/cpd-empty-report-plugin-config.xml b/src/test/resources/unit/empty-report/cpd-empty-report-plugin-config.xml
index 6db1139..be2b534 100644
--- a/src/test/resources/unit/empty-report/cpd-empty-report-plugin-config.xml
+++ b/src/test/resources/unit/empty-report/cpd-empty-report-plugin-config.xml
@@ -36,10 +36,11 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.CustomConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/empty-report/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/empty-report/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/empty-report/java/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
         </configuration>
         <dependencies>
diff --git a/src/test/resources/unit/empty-report/cpd-skip-empty-report-plugin-config.xml b/src/test/resources/unit/empty-report/cpd-skip-empty-report-plugin-config.xml
index 93f4887..9109cda 100644
--- a/src/test/resources/unit/empty-report/cpd-skip-empty-report-plugin-config.xml
+++ b/src/test/resources/unit/empty-report/cpd-skip-empty-report-plugin-config.xml
@@ -39,7 +39,7 @@ under the License.
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/empty-report/java/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <minimumTokens>100</minimumTokens>
           <skipEmptyReport>true</skipEmptyReport>
         </configuration>
diff --git a/src/test/resources/unit/empty-report/empty-report-plugin-config.xml b/src/test/resources/unit/empty-report/empty-report-plugin-config.xml
index 56e3bc1..c1c6ea8 100644
--- a/src/test/resources/unit/empty-report/empty-report-plugin-config.xml
+++ b/src/test/resources/unit/empty-report/empty-report-plugin-config.xml
@@ -36,11 +36,12 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.CustomConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/empty-report/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/empty-report/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/empty-report/target/pmd/rulesets</rulesetsTargetDirectory>
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/empty-report/java/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
         </configuration>
         <dependencies>
           <dependency>
diff --git a/src/test/resources/unit/empty-report/skip-empty-report-plugin-config.xml b/src/test/resources/unit/empty-report/skip-empty-report-plugin-config.xml
index 41e1aef..2aeff05 100644
--- a/src/test/resources/unit/empty-report/skip-empty-report-plugin-config.xml
+++ b/src/test/resources/unit/empty-report/skip-empty-report-plugin-config.xml
@@ -40,7 +40,7 @@ under the License.
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/empty-report/java/</compileSourceRoot>
           </compileSourceRoots>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <skipEmptyReport>true</skipEmptyReport>
         </configuration>
         <dependencies>
diff --git a/src/test/resources/unit/exclude-roots/pmd-exclude-roots-plugin-config.xml b/src/test/resources/unit/exclude-roots/pmd-exclude-roots-plugin-config.xml
index 9435974..6f94b8f 100644
--- a/src/test/resources/unit/exclude-roots/pmd-exclude-roots-plugin-config.xml
+++ b/src/test/resources/unit/exclude-roots/pmd-exclude-roots-plugin-config.xml
@@ -36,9 +36,10 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/exclude-roots/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/exclude-roots/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/exclude-roots/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
 
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/exclude-roots/src</compileSourceRoot>
diff --git a/src/test/resources/unit/invalid-format/invalid-format-plugin-config.xml b/src/test/resources/unit/invalid-format/invalid-format-plugin-config.xml
index 9d5958a..e6ccad4 100644
--- a/src/test/resources/unit/invalid-format/invalid-format-plugin-config.xml
+++ b/src/test/resources/unit/invalid-format/invalid-format-plugin-config.xml
@@ -40,7 +40,7 @@ under the License.
           <format>xhtml</format>
           <linkXRef>false</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/invalid-format/target/site/xref</xrefLocation>
-          <sourceEncoding>ISO-8859-1</sourceEncoding>
+          <inputEncoding>ISO-8859-1</inputEncoding>
         </configuration>
       </plugin>
     </plugins>
diff --git a/src/test/resources/unit/invalid-format/invalid-target-jdk-plugin-config.xml b/src/test/resources/unit/invalid-format/invalid-target-jdk-plugin-config.xml
index 30dc635..94b4e65 100644
--- a/src/test/resources/unit/invalid-format/invalid-target-jdk-plugin-config.xml
+++ b/src/test/resources/unit/invalid-format/invalid-target-jdk-plugin-config.xml
@@ -41,7 +41,7 @@ under the License.
           <targetJdk>1.x</targetJdk>
           <linkXRef>true</linkXRef>
           <xrefLocation>${basedir}/target/test/unit/default-configuration/target/site/xref</xrefLocation>
-          <sourceEncoding>ISO-8859-1</sourceEncoding>
+          <inputEncoding>ISO-8859-1</inputEncoding>
           
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/default-configuration/</compileSourceRoot>
diff --git a/src/test/resources/unit/processing-error/pmd-processing-error-no-report-plugin-config.xml b/src/test/resources/unit/processing-error/pmd-processing-error-no-report-plugin-config.xml
index 7db20a1..ba7f86f 100644
--- a/src/test/resources/unit/processing-error/pmd-processing-error-no-report-plugin-config.xml
+++ b/src/test/resources/unit/processing-error/pmd-processing-error-no-report-plugin-config.xml
@@ -36,9 +36,10 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/parse-error/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/parse-error/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/parse-error/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <skipPmdError>true</skipPmdError>
           <renderProcessingErrors>false</renderProcessingErrors>
           <compileSourceRoots>
diff --git a/src/test/resources/unit/processing-error/pmd-processing-error-plugin-config.xml b/src/test/resources/unit/processing-error/pmd-processing-error-plugin-config.xml
index 0a2a10e..f08cee4 100644
--- a/src/test/resources/unit/processing-error/pmd-processing-error-plugin-config.xml
+++ b/src/test/resources/unit/processing-error/pmd-processing-error-plugin-config.xml
@@ -38,7 +38,7 @@ under the License.
           <targetDirectory>${basedir}/target/test/unit/parse-error/target</targetDirectory>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/parse-error/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <skipPmdError>false</skipPmdError>
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/processing-error/src</compileSourceRoot>
diff --git a/src/test/resources/unit/processing-error/pmd-processing-error-skip-plugin-config.xml b/src/test/resources/unit/processing-error/pmd-processing-error-skip-plugin-config.xml
index 9974a8f..686d705 100644
--- a/src/test/resources/unit/processing-error/pmd-processing-error-skip-plugin-config.xml
+++ b/src/test/resources/unit/processing-error/pmd-processing-error-skip-plugin-config.xml
@@ -36,9 +36,10 @@ under the License.
           <project implementation="org.apache.maven.plugins.pmd.stubs.DefaultConfigurationMavenProjectStub"/>
           <outputDirectory>${basedir}/target/test/unit/parse-error/target/site</outputDirectory>
           <targetDirectory>${basedir}/target/test/unit/parse-error/target</targetDirectory>
+          <localRepository>${localRepository}</localRepository>
           <rulesetsTargetDirectory>${basedir}/target/test/unit/parse-error/target/pmd/rulesets</rulesetsTargetDirectory>
           <format>xml</format>
-          <sourceEncoding>UTF-8</sourceEncoding>
+          <inputEncoding>UTF-8</inputEncoding>
           <skipPmdError>true</skipPmdError>
           <compileSourceRoots>
             <compileSourceRoot>${basedir}/src/test/resources/unit/processing-error/src</compileSourceRoot>