0

Resources should be closed在 SonarQube 中,Java ( squid:S2095)有一个规则。该规则有一个参数excludedResourceTypes

规则鱿鱼参数:S2095

这个参数怎么设置?

4

1 回答 1

1

设置它的一种方法是转到 SonarQube 服务器的管理 -> 分析范围:

  1. 浏览到您的 Sonar 实例:http://servername:9000
  2. 以管理员身份登录
  3. 点击管理
  4. 选择左侧的分析选项卡
  5. 转到问题块并查看“忽略多个标准的问题”

例如,如果您想限制以下 COBOL 规则:“防止 GO TO 语句将控制权转移到当前模块之外”位于目录 bank/creditcard 和 bank/bankcard => 这需要两个标准来定义它:

 key: cobol:COBOL.GotoTransferControlOutsideCurrentModuleCheck; path:
    bank/creditcard/**/*

    key: cobol:COBOL.GotoTransferControlOutsideCurrentModuleCheck; path:
    bank/bankcard/**/*

更新

您可以让 SonarQube 忽略某些组件和违反某些编码规则的问题。转至管理 > 常规设置 > 分析范围 > 问题。请注意,下面的属性只能通过 Web 界面设置,因为它们是多值的。

SonarQube.Issue.* 属性都不能通过命令行设置,因为它们是多值的。请在此处找到官方文档

这些是 SonarQube 问题属性:

  • 忽略文件上的问题 - 键:sonar.issue.ignore.allfile
  • 忽略块中的问题 - 键:sonar.issue.ignore.block
  • 忽略多个标准的问题 - 键:sonar.issue.ignore.multicriteria
  • 限制编码规则的范围 - 键:sonar.issue.enforce.multicriteria

如果您希望将此规则应用于特定的 SonarQube 项目,您可以通过转到 SonarQube 来执行此操作:

  1. 浏览项目
  2. 选择您的项目
  3. 浏览至管理 -> 常规设置 -> 分析范围并设置如上所示的值。

资源

忽略多个标准的问题

***更新 2:进行谷歌搜索看起来有办法通过 POM.xml 传递此属性:https ://stackoverflow.com/a/21825470/1766402但不是按照官方文档。

于 2018-06-01T14:09:37.557 回答