2017-08-29 97 views
0

我在build.gradle PMD检查这样的:配置相同的PMD规则集的Eclipse-PMD作为gradle这个PMD使用 - 哪些规则集是用于net.sourceforge.pmd:PMD-java的

apply plugin: "pmd" 

dependencies { 
    pmd "net.sourceforge.pmd:pmd-java:5.5.+" 
} 
/*** PMD ***/ 

pmd { 
    ignoreFailures = true 
} 

tasks.withType(Pmd) { 
    excludes = ["**/gen/*"] 
    reports { 
     xml.enabled = true 
     html.enabled = true 
    } 
} 

哪个规则集在这里使用?

我想为eclipse PMD插件(Project Properties - > PMD - Add)配置相同的规则集。 理想的eclipse项目通过gradle进行配置以获得正确的设置。

回答

1

的摇篮,默认的配置是使用java-basicsource

然而,这是一个非常保守的做法,需要一点利用所有PMD所提供的。

我个人的意见,一个PMD维护者是你:包括你同意这些规则,所有额外的属性可在https://pmd.github.io/pmd-5.8.1/pmd-java/rules/index.html

  • Create your own ruleset

    1. 审查所有的规则,你可能希望从默认值改变。

    Gradle和PMD Eclipse插件都可以从规则集加载规则文件,使得它们在任何时候都很容易保持同步。

  • +0

    谢谢。是的,我扩展了规则集,并将其添加到我的gradle中。''''''''' – timguy

    +0

    @timguy令人惊叹!另外值得注意的是,5.5.x是PMD的一个非常老的版本。最新版本是5.8.1(即将推出6.0.0)。你应该考虑更新,并且这样做不是直接定义依赖关系,而是使用'pmd {toolVersion ='5.8.1'}',因为PMD实际上被分成了几个不同的瓶子 – Johnco