定义 PMD 规则集时是否可以从特定规则中排除源文件?
我想做如下的事情:
<rule ref=rulesets/java/logging-java.xml>
<exclude name="Ignore.java" />
</rule>
规则名称似乎仅支持排除。源文件有类似的东西吗?
最佳答案
如果您使用 maven-pmd-plugin
工具来运行 PMD,那么您可以包含一个属性文件,列出要忽略的类和规则。
exclude-pmd.properties
org.apache.maven.ClassA=UnusedPrivateField,EmptyCatchBlock
org.apache.maven.ClassB=UnusedPrivateField,UnusedFormalParameter,UnusedPrivateMethod
pom.xml
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>3.8</version>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
<configuration>
<excludeFromFailureFile>exclude-pmd.properties</excludeFromFailureFile>
</configuration>
</execution>
<execution>
<goals>
<goal>cpd-check</goal>
</goals>
<configuration>
<excludeFromFailureFile>exclude-cpd.properties</excludeFromFailureFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
...
</project>
更多详情:https://maven.apache.org/plugins/maven-pmd-plugin/examples/violation-exclusions.html
关于java - 您可以排除特定 PMD 规则的源文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11645443/