如何在Gradle> 2.0中查找PMD规则集名称

时间:2014-08-30 16:24:48

标签: java gradle pmd

在Gradle的Java项目中,我们可以通过pmd插件使用PMD。配置我们想要使用的规则可以通过两种方式实现:

       
  • ruleSetFiles - 要使用的自定义规则集文件。有关如何编写规则集文件的信息,请参阅官方文档。示例:ruleSetFiles = files(" config / pmd / myRuleSet.xml")    
  •    
  • ruleSets 要使用的内置规则集。请参阅内置规则集的官方列表。    

使用ruleSetFiles,您可以找到规则的名称并添加或排除规则,但在文档中没有关于ruleStes的信息吗?从哪里可以找到确切的名字?根据我从其他项目中发现的名称,这些名称与PMD文档中的名称类似,但是小写。例如:

Braces - > java-braces
Clone - > java-clone
Implementation - >java-implementation
Code Size - > java-codesize

安全码指南之类的内容不会在 - >中转换java-securitycodeguidelines ,但只是在 java-sunsecure 中。我发现了与PMD 5.1.1一起使用的名称。是:

pmd {
      ruleSets = [
        'java-android',
        'java-basic',
        'java-braces',
        'java-clone',
        'java-codesize',
        'java-comments',
        'java-controversial',
        'java-coupling',
        'java-design',
        'java-empty',
        'java-finalizers',
        'java-imports',
        'java-j2ee',
        'java-javabeans',
        'java-junit',
        'java-logging-jakarta-commons',
        'java-logging-java',
        'java-migrating',
        'java-naming',
        'java-optimizations',
        'java-strictexception',
        'java-strings',
        'java-sunsecure',
        'java-typeresolution',
        'java-unnecessary',
        'java-unusedcode'           
        ]
    toolVersion = '5.1.1'
    ignoreFailures = true
}

如何查找文档和Gradle名称中显示的PMD名称之间的映射?

1 个答案:

答案 0 :(得分:3)

The docs for RuleSetReferenceId很有帮助,因为我相信源树中的这个directory。基本上把java-放在任何这些文件的前面来打开那里的规则。