0

我正在使用 SonarQube v 5.0.1 我已将我的 rules.xml 文件放在 extensions/rules/pmd 目录中。现在,如果我使用 sonar-pmd-plugin 2.3 版,一切正常 - 我启动声纳,进入规则搜索并可以在 rules.xml 文件中找到所有规则。但是在切换到 sonar-pmd-plugin 2.4 版后,我找不到我的规则。我已经在旧的(v 2.3)插件中切换了 PMD 版本,但它没有任何效果,所以我猜它不是 PMD,它是插件。最新的 pmd 插件或其他东西是否更改了默认的规则目录?在文档中找不到任何内容。

4

2 回答 2

1

我对 Sonarqube 4.5.5 也有同样的问题。将 sonar-pmd-plugin 从 2.4 降级到 2.3 解决了这个问题。现在我可以看到我放在 extensions/rules/pmd 中的自定义规则。

于 2015-10-05T17:29:02.320 回答
0

我遇到了 Sonarqube 5.6.3 和 sonar-pmd-plugin 2.6 的问题。因此,要查看我的自定义规则,我需要执行以下操作:

  • 将规则集定义 jar 文件和规则列表 xml 文件放在extensions/rules/pmd路径中,为此我遵循这篇文章
  • 将插件降级到 2.3 版本。
  • 在插件的pmd.properties文件中添加自定义规则,该文件位于org/sonar/l10n/中。例如:

    #Add pmdAtgRules
    rule.pmd.ActionClassName.name=ActionClassName
    rule.pmd.BreaksLogging.name=BreaksLogging
    
  • 重新启动声纳库。
于 2017-04-04T21:27:16.680 回答