【发布时间】:2019-09-27 00:35:44
【问题描述】:
我有多个模块的maven项目,结构是这样的:
/myProject
pom.xml
exclude-cpd.properties
-- module1
pom.xml
exclude-cpd.properties
-- module2
pom.xml
exclude-cpd.properties
在我的父 pom.xml 中我添加了 pmd 插件:
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>3.12.0</version>
<configuration>
<rulesets>
<ruleset>pmd_ruleset.xml</ruleset>
</rulesets>
<minimumTokens>80</minimumTokens>
<includeTests>true</includeTests>
<excludeFromFailureFile>exclude-cpd.properties</excludeFromFailureFile>
<printFailingErrors>true</printFailingErrors>
</configuration>
</plugin>
</plugins>
</pluginManagement>
在 exclude-cpd.properties 中,我将所有要从 cpd-check 中排除的文件都包含为逗号分隔的字符串。
但是当我运行mvn clean compile 时,它仍然会扫描那些排除的文件并抱怨重复。似乎excludeFromFailureFile 根本不起作用,我最终不得不使用excludes 从 pmd 检查和 cpd 检查中排除文件,但这并不理想。有人知道如何让excludeFromFailureFile 工作吗?
工作 pom.xml:
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>3.12.0</version>
<configuration>
<rulesets>
<ruleset>pmd_ruleset.xml</ruleset>
</rulesets>
<minimumTokens>80</minimumTokens>
<includeTests>true</includeTests>
<excludes>
<exclude>**/XyzService*.java</exclude>
</excludes>
<printFailingErrors>true</printFailingErrors>
</configuration>
</plugin>
</plugins>
</pluginManagement>
【问题讨论】:
标签: maven-plugin pmd