Правило pmd не включено, но выполняется gradle - PullRequest
0 голосов
/ 12 января 2019

Gradle-5,1 PMD-плагин

gradle pmdMain выдает множество ошибок типа DataflowAnomalyAnalysis, хотя это правило явно исключено.

из 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 (только правило):

< rule ref="category/java/errorprone.xml">
    < exclude name="DataflowAnomalyAnalysis"/>
< /rule>

Как ДЕЙСТВИТЕЛЬНО исключить это правило?

1 Ответ

0 голосов
/ 12 января 2019

Плагин Gradle PMD имеет два свойства для настройки правил:

  • ruleSetFiles
  • Rulesets

Свойство ruleSets по умолчанию включило несколько наборов правил (errorprone и bestpractices).

Чтобы выполнять только правила, указанные в ruleSetFiles, вам нужно явно установить ruleSets в пустой список, например,

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