pmd规则不包括但由gradle执行

pmd规则不包括但由gradle执行,gradle,pmd,Gradle,Pmd,gradle-5.1 pmd插件 gradle pmdMain产生了大量Dataflow异常分析类型的错误,尽管该规则被明确排除 从build.gradle: plugins { id: 'pmd' } pmd { ignoreFailures = true sourceSets = [sourceSets.main] reportsDir = file("$project.buildDir/reports/pmd") ruleSetFiles = fi

gradle-5.1 pmd插件

gradle pmdMain产生了大量Dataflow异常分析类型的错误,尽管该规则被明确排除

从build.gradle:

plugins {
    id: 'pmd'
}

pmd {
    ignoreFailures = true
    sourceSets = [sourceSets.main]
    reportsDir = file("$project.buildDir/reports/pmd")
    ruleSetFiles = files("config/pmd/ruleset.xml")
}
从ruleset.xml(仅规则):



如何才能真正排除该规则?

有两个属性来配置规则:

  • 规则集文件
  • 规则集
该属性默认启用了两个规则集(容易出错和最佳实践)

为了只执行
ruleSetFiles
中指定的规则,您需要将
ruleSets
显式设置为空列表,例如

pmd {
    ignoreFailures = true
    sourceSets = [sourceSets.main]
    reportsDir = file("$project.buildDir/reports/pmd")
    ruleSetFiles = files("config/pmd/ruleset.xml")
    ruleSets = []
}
pmd {
    ignoreFailures = true
    sourceSets = [sourceSets.main]
    reportsDir = file("$project.buildDir/reports/pmd")
    ruleSetFiles = files("config/pmd/ruleset.xml")
    ruleSets = []
}