java – 在Eclipe PMD插件中,我可以引用标准规则集文件吗?

我希望我的
eclipse PMD plugin配置能够访问与
maven-pmd-plugin相同的
standard ruleset files.

您可以配置maven pmd插件以使用一组自定义规则集,如下所示:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-pmd-plugin</artifactId>
    <version>2.5</version>
    <configuration>
      <rulesets>
        <!-- Two rule sets that come bundled with PMD -->
        <ruleset>/rulesets/braces.xml</ruleset>
        <ruleset>/rulesets/naming.xml</ruleset>
        <!-- Custom local file system rule set -->
        <ruleset>d:\rulesets\strings.xml</ruleset>
        <!-- Custom remote rule set accessed via a URL -->
        <ruleset>http://localhost/design.xml</ruleset>
      </rulesets>
    </configuration>
</plugin>

但在eclipse插件中,您只能打开/关闭单个规则或指定单个规则集文件.是否有一种方法规则集文件可以包含其他几个?或者我是否必须从我想要使用的规则集自动聚合该文件?

最佳答案 您可以在PMD规则集文件中包含其他规则集,例如

<ruleset ...>
    ...
    <rule ref="rulesets/basic.xml"/>
    ...
    <rule ref="rulesets/strings.xml">
        <exclude name="AvoidDuplicateLiterals"/>
    </rule>
    ...
</ruleset>

这实际上是我们自己的规则集文件的摘录,因此它被证明可以工作:-)

如您所见,您可以从规则集中排除/包含单个规则,甚至可以重新配置它们.需要注意的是:您不得在单个规则集中混合使用不同语言的规则.即在我们的例子中,我们必须为Java和JSP创建单独的规则集.

我从this page开始学习这些技巧.

点赞