diff --git a/src/it/MPMD-296-rulesetsTargetDirectory/invoker.properties b/src/it/MPMD-296-rulesetsTargetDirectory/invoker.properties
new file mode 100644
index 00000000..3f2b089f
--- /dev/null
+++ b/src/it/MPMD-296-rulesetsTargetDirectory/invoker.properties
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals.1 = clean verify
+invoker.profiles.1 =
+# no clean for the next executions, otherwise we can't verify
+invoker.goals.2 = verify
+invoker.profiles.2 = customTargetOld
+invoker.goals.3 = verify
+invoker.profiles.3 = customTarget
diff --git a/src/it/MPMD-296-rulesetsTargetDirectory/pom.xml b/src/it/MPMD-296-rulesetsTargetDirectory/pom.xml
new file mode 100644
index 00000000..a8299c2b
--- /dev/null
+++ b/src/it/MPMD-296-rulesetsTargetDirectory/pom.xml
@@ -0,0 +1,82 @@
+
+
+
+
+
+ 4.0.0
+ org.apache.maven.plugins.pmd.it
+ MPMD-296-rulesetsTargetDirectory
+ 1.0.0-SNAPSHOT
+
+ Verifies that the resolved and extracted rulesets are in the correct target directory
+
+
+
+
+ org.apache.maven.plugins
+ maven-pmd-plugin
+ @project.version@
+
+ false
+
+
+
+ pmd-check
+
+ check
+
+
+
+
+
+
+
+
+
+ customTargetOld
+
+
+
+ org.apache.maven.plugins
+ maven-pmd-plugin
+
+ ${project.build.directory}
+
+
+
+
+
+
+ customTarget
+
+
+
+ org.apache.maven.plugins
+ maven-pmd-plugin
+
+ ${project.build.directory}/pmd-custom
+
+
+
+
+
+
+
diff --git a/src/it/MPMD-296-rulesetsTargetDirectory/src/main/java/test/MyClass.java b/src/it/MPMD-296-rulesetsTargetDirectory/src/main/java/test/MyClass.java
new file mode 100644
index 00000000..0be3612f
--- /dev/null
+++ b/src/it/MPMD-296-rulesetsTargetDirectory/src/main/java/test/MyClass.java
@@ -0,0 +1,31 @@
+package test;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+public class MyClass
+{
+
+ public static void main( String[] args )
+ {
+ ;
+ return;
+ }
+
+}
diff --git a/src/it/MPMD-296-rulesetsTargetDirectory/verify.groovy b/src/it/MPMD-296-rulesetsTargetDirectory/verify.groovy
new file mode 100644
index 00000000..f14b8370
--- /dev/null
+++ b/src/it/MPMD-296-rulesetsTargetDirectory/verify.groovy
@@ -0,0 +1,34 @@
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+File buildLog = new File( basedir, 'build.log' )
+assert buildLog.exists()
+
+// default configuration
+File defaultRuleset = new File( basedir, 'target/pmd/rulesets/maven-pmd-plugin-default.xml' )
+assert defaultRuleset.exists()
+
+// backwards compatible configuration (profile customTargetOld)
+File customTargetOld = new File( basedir, 'target/maven-pmd-plugin-default.xml' )
+assert customTargetOld.exists()
+
+// custom configuration (profile customTarget)
+File customTarget = new File( basedir, 'target/pmd-custom/maven-pmd-plugin-default.xml' )
+assert customTarget.exists()
diff --git a/src/it/multi-module/verify.bsh b/src/it/multi-module/verify.bsh
index e568bffa..fbede4e9 100644
--- a/src/it/multi-module/verify.bsh
+++ b/src/it/multi-module/verify.bsh
@@ -59,14 +59,14 @@ for ( String path : paths )
// check PMD rulesets target copy
-File rule = new File( basedir, "mod-1/target/latin-1.xml" );
+File rule = new File( basedir, "mod-1/target/pmd/rulesets/latin-1.xml" );
String nonascii = "-CHARS: \u00C4\u00D6\u00DC\u00E4\u00F6\u00FC\u00DF\u00BC\u00BD\u00BE\u00A4";
String content = FileUtils.fileRead( rule, "ISO-8859-1" );
if ( content.indexOf( nonascii ) < 0 )
{
throw new IOException( "non-ascii content corrupted in Latin1." );
}
-rule = new File( basedir, "mod-1/target/utf-8.xml" );
+rule = new File( basedir, "mod-1/target/pmd/rulesets/utf-8.xml" );
content = FileUtils.fileRead( rule, "UTF-8" );
if ( content.indexOf( nonascii ) < 0 )
{
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 0c59b3d6..0573e317 100644
--- a/src/main/java/org/apache/maven/plugins/pmd/PmdReport.java
+++ b/src/main/java/org/apache/maven/plugins/pmd/PmdReport.java
@@ -250,6 +250,15 @@ public class PmdReport
@Parameter( property = "pmd.renderViolationsByPriority", defaultValue = "true" )
private boolean renderViolationsByPriority = true;
+ /**
+ * Before PMD is executed, the configured rulesets are resolved and copied into this directory.
+ *
Note: Before 3.13.0, this was by default ${project.build.directory}.
+ *
+ * @since 3.13.0
+ */
+ @Parameter( property = "pmd.rulesetsTargetDirectory", defaultValue = "${project.build.directory}/pmd/rulesets" )
+ private File rulesetsTargetDirectory;
+
@Component
private DependencyResolver dependencyResolver;
@@ -396,7 +405,7 @@ private void executePmd()
// configure ResourceManager
locator.addSearchPath( FileResourceLoader.ID, project.getFile().getParentFile().getAbsolutePath() );
locator.addSearchPath( "url", "" );
- locator.setOutputDirectory( targetDirectory );
+ locator.setOutputDirectory( rulesetsTargetDirectory );
renderer = new PmdCollectingRenderer();
PMDConfiguration pmdConfiguration = getPMDConfiguration();
diff --git a/src/test/java/org/apache/maven/plugins/pmd/CpdViolationCheckMojoTest.java b/src/test/java/org/apache/maven/plugins/pmd/CpdViolationCheckMojoTest.java
index ad26cf8d..09c0dd51 100644
--- a/src/test/java/org/apache/maven/plugins/pmd/CpdViolationCheckMojoTest.java
+++ b/src/test/java/org/apache/maven/plugins/pmd/CpdViolationCheckMojoTest.java
@@ -69,7 +69,7 @@ public void testNotFailOnViolation()
testPom =
new File( getBasedir(),
- "src/test/resources/unit/default-configuration/pmd-check-notfailonviolation-plugin-config.xml" );
+ "src/test/resources/unit/default-configuration/cpd-check-notfailonviolation-plugin-config.xml" );
final CpdViolationCheckMojo cpdViolationMojo = (CpdViolationCheckMojo) lookupMojo( "cpd-check", testPom );
cpdViolationMojo.execute();
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 a92ed4c1..70d6ed0a 100644
--- a/src/test/java/org/apache/maven/plugins/pmd/PmdReportTest.java
+++ b/src/test/java/org/apache/maven/plugins/pmd/PmdReportTest.java
@@ -74,7 +74,7 @@ public void testDefaultConfiguration()
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
// check if the rulesets, that have been applied, have been copied
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/maven-pmd-plugin-default.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/maven-pmd-plugin-default.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/site/pmd.html" );
@@ -187,13 +187,13 @@ public void testJavascriptConfiguration()
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
// these are the rulesets, that have been applied...
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/bestpractices.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/bestpractices.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/codestyle.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/codestyle.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/errorprone.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/errorprone.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/site/pmd.html" );
@@ -250,18 +250,19 @@ public void testFileURL()
File generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/basic.xml" );
+ // the resolved and extracted rulesets
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/basic.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/imports.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/imports.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/unusedcode.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/unusedcode.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
generatedFile =
new File( getBasedir(),
- "target/test/unit/default-configuration/target/export_format_pmd_language_java_name_Sonar_2520way.xml" );
+ "target/test/unit/default-configuration/target/pmd/rulesets/export_format_pmd_language_java_name_Sonar_2520way.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/site/pmd.html" );
@@ -306,7 +307,7 @@ public void testCustomConfiguration()
File generatedFile = new File( getBasedir(), "target/test/unit/custom-configuration/target/pmd.csv" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/custom-configuration/target/custom.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/custom-configuration/target/pmd/rulesets/custom.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
generatedFile = new File( getBasedir(), "target/test/unit/custom-configuration/target/site/pmd.html" );
@@ -528,19 +529,19 @@ public void testJspConfiguration()
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
// these are the rulesets, that have been applied...
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/bestpractices.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/bestpractices.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/codestyle.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/codestyle.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/design.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/design.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/errorprone.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/errorprone.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
- generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/security.xml" );
+ generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/pmd/rulesets/security.xml" );
assertTrue( FileUtils.fileExists( generatedFile.getAbsolutePath() ) );
generatedFile = new File( getBasedir(), "target/test/unit/default-configuration/target/site/pmd.html" );
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 5a1df257..b99ab019 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/custom-configuration/target/site
${basedir}/target/test/unit/custom-configuration/target
+ ${basedir}/target/test/unit/custom-configuration/target/pmd/rulesets
csv
true
${basedir}/target/test/unit/custom-configuration/target/site/xref
diff --git a/src/test/resources/unit/custom-configuration/pmd-check-exception-test-plugin-config.xml b/src/test/resources/unit/custom-configuration/pmd-check-exception-test-plugin-config.xml
index eccc73c9..4f6add40 100644
--- a/src/test/resources/unit/custom-configuration/pmd-check-exception-test-plugin-config.xml
+++ b/src/test/resources/unit/custom-configuration/pmd-check-exception-test-plugin-config.xml
@@ -35,6 +35,7 @@ under the License.
${basedir}/src/test/resources/unit/custom-configuration
${basedir}/target/test/unit/custom-configuration/target
+ ${basedir}/target/test/unit/custom-configuration/target/pmd/rulesets
false
java
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 d209a5b9..0705d31c 100644
--- a/src/test/resources/unit/custom-configuration/skip-plugin-config.xml
+++ b/src/test/resources/unit/custom-configuration/skip-plugin-config.xml
@@ -36,6 +36,7 @@ under the License.
${basedir}/target/test/unit/skip-configuration/target/site
${basedir}/target/test/unit/skip-configuration/target
+ ${basedir}/target/test/unit/skip-configuration/target/pmd/rulesets
csv
true
${basedir}/target/test/unit/skip-configuration/target/site/xref
diff --git a/src/test/resources/unit/default-configuration/cpd-check-notfailonviolation-plugin-config.xml b/src/test/resources/unit/default-configuration/cpd-check-notfailonviolation-plugin-config.xml
new file mode 100644
index 00000000..45d1e526
--- /dev/null
+++ b/src/test/resources/unit/default-configuration/cpd-check-notfailonviolation-plugin-config.xml
@@ -0,0 +1,52 @@
+
+
+
+ 4.0.0
+ custom.configuration
+ custom-configuration
+ jar
+ 1.0-SNAPSHOT
+ 2006
+ Maven PMD CPD Violation Check Custom Configuration Test
+ http://maven.apache.org
+
+ custom-configuration
+
+
+ org.apache.maven.plugins
+ maven-pmd-plugin
+
+
+ ${basedir}/target/test/unit/default-configuration/target
+ false
+ false
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jxr-plugin
+
+
+
+
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 ccff1126..f476e09c 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
true
${basedir}/target/test/unit/default-configuration/target/site/xref
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 2a1abf83..a9f7c56c 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
UTF-8
javascript
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 14fe3bb5..53b026a9 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
UTF-8
jsp
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 dc0e98d4..1963d899 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
UTF-8
true
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 1c58040c..e224833b 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
true
${basedir}/target/test/unit/default-configuration/target/site/xref
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 9afeda39..002ee55f 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
true
${basedir}/target/test/unit/default-configuration/target/site/xref
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 7e48e054..3071f8ea 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
true
${basedir}/target/test/unit/default-configuration/target/site/xref
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 15bbc9dd..142bc62e 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target/site
${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target
+ ${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target/pmd/rulesets
xml
true
${basedir}/target/test/unit/pmd-with-analysis-cache-plugin-config/target/site/xref
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 fa9552e9..88d8a937 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
true
${basedir}/target/test/unit/default-configuration/target/site/xref
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 ba98e29b..56e3bc11 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/empty-report/target/site
${basedir}/target/test/unit/empty-report/target
+ ${basedir}/target/test/unit/empty-report/target/pmd/rulesets
${basedir}/src/test/resources/unit/empty-report/java/
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 6bc5fc48..41e1aef7 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
@@ -36,6 +36,7 @@ under the License.
${basedir}/target/test/unit/empty-report/target/site
${basedir}/target/test/unit/empty-report/target
+ ${basedir}/target/test/unit/empty-report/target/pmd/rulesets
${basedir}/src/test/resources/unit/empty-report/java/
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 6fdf7935..94359745 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/exclude-roots/target/site
${basedir}/target/test/unit/exclude-roots/target
+ ${basedir}/target/test/unit/exclude-roots/target/pmd/rulesets
xml
UTF-8
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 f454f494..9d5958a0 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
@@ -36,6 +36,7 @@ under the License.
${basedir}/target/test/unit/invalid-format/target/site
${basedir}/target/test/unit/invalid-format/target
+ ${basedir}/target/test/unit/invalid-format/target/pmd/rulesets
xhtml
false
${basedir}/target/test/unit/invalid-format/target/site/xref
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 c8088a3f..30dc6358 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
@@ -36,6 +36,7 @@ under the License.
${basedir}/target/test/unit/default-configuration/target/site
${basedir}/target/test/unit/default-configuration/target
+ ${basedir}/target/test/unit/default-configuration/target/pmd/rulesets
xml
1.x
true
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 77953cff..7db20a11 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/parse-error/target/site
${basedir}/target/test/unit/parse-error/target
+ ${basedir}/target/test/unit/parse-error/target/pmd/rulesets
xml
UTF-8
true
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 67911806..0a2a10ee 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
@@ -36,6 +36,7 @@ under the License.
${basedir}/target/test/unit/parse-error/target/site
${basedir}/target/test/unit/parse-error/target
+ ${basedir}/target/test/unit/parse-error/target/pmd/rulesets
xml
UTF-8
false
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 faa30c11..9974a8ff 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,6 +36,7 @@ under the License.
${basedir}/target/test/unit/parse-error/target/site
${basedir}/target/test/unit/parse-error/target
+ ${basedir}/target/test/unit/parse-error/target/pmd/rulesets
xml
UTF-8
true