Я должен использовать разные правила checkstyle для исходных и тестовых папок. То же самое нужно сделать для pmd.
уже попробовал вариант по ссылке Различные правила Checkstyle для Main и Test In Maven , но не получил никакого результата. Данное решение не учитывает правила подавления.
Это может быть решением Проверьте различные правила для разных файлов , но вы хотите сделать его более общим.
Если ссылаться на 2 разных файла невозможно, я должен следовать приведенному выше, но хотел попробовать один раз.
Пожалуйста, помогите мне определить, чего мне здесь не хватает
рабочий код для одного файла правил для обеих папок
<checkstyle-maven-plugin.version>3.0.0</checkstyle-maven-plugin.version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${checkstyle-maven-plugin.version}</version>
<configuration>
<suppressionsLocation>/src/main/resources/config/checkstyle/suppression.xml</suppressionsLocation>
<configLocation>/src/main/resources/config/checkstyle/checkstyle.xml</configLocation>
<failOnViolation>false</failOnViolation>
<excludes>**/Application.java,**/skjolberg/**/**,**/mapper/**,**/entity/**</excludes>
<encoding>UTF-8</encoding>
<consoleOutput>false</consoleOutput>
<failsOnError>false</failsOnError>
</configuration>
<executions>
<execution>
<id>validate</id>
<phase>validate</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
что я пробовал
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.6</version>
<reportSets>
<reportSet>
<id>main_checks</id>
<reports>
<report>checkstyle</report>
</reports>
<configuration>
<sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
<includeTestSourceDirectory>false</includeTestSourceDirectory>
<suppressionsLocation>/src/main/resources/config/checkstyle/suppression.xml</suppressionsLocation>
<configLocation>/src/main/resources/config/checkstyle/checkstyle.xml</configLocation>
<!-- <configLocation>checkstyle.xml</configLocation> -->
<failOnViolation>false</failOnViolation>
<excludes>**/PSCApplication.java,**/skjolberg/**/**,**/mapper/**,**/psc/entity/**</excludes>
<encoding>UTF-8</encoding>
<consoleOutput>false</consoleOutput>
<failsOnError>false</failsOnError>
<outputDirectory>${project.reporting.outputDirectory}/main-checks/</outputDirectory>
</configuration>
</reportSet>
<reportSet>
<id>test_checks</id>
<reports>
<report>checkstyle</report>
</reports>
<configuration>
<sourceDirectory></sourceDirectory>
<testSourceDirectory>${project.build.testSourceDirectory}</testSourceDirectory>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
<suppressionsLocation>/src/main/resources/config/checkstyle/suppression.xml</suppressionsLocation>
<configLocation>/src/main/resources/config/checkstyle/checkstyle-test.xml</configLocation>
<!-- <configLocation>checkstyle.xml</configLocation> -->
<failOnViolation>false</failOnViolation>
<excludes>**/PSCApplication.java,**/skjolberg/**/**,**/mapper/**,**/psc/entity/**</excludes>
<encoding>UTF-8</encoding>
<consoleOutput>false</consoleOutput>
<failsOnError>false</failsOnError>
<outputDirectory>${project.reporting.outputDirectory}/test-checks/</outputDirectory>
</configuration>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
Я запустил команду mvn checkstyle: checkstyle, но не получил ожидаемого результата.