在SonarQube 4.5.x LTS中,注释@SuppressWarnings
可用于抑制代码中的误报,但在升级到5.4并重新安排某些包之后,这些先前被抑制的问题已经重新出现。为什么呢?
我被告知SonarSource(开发SonarQube的公司)的建议是抑制来自管理UI的误报,但我们更愿意直接在代码中执行此操作*。 使用注释明确禁止下面的违规行为:
@SuppressWarnings
*原因包括:
- 不依赖于SonarQube数据库状态
- 不必依赖SonarQube 能够在更改时识别旧的受抑制代码行)
更新(2017-02-03):SonarQube 6.x处理移动代码并保持误报
答案 0 :(得分:4)
如果您使用的是SonarQube Java插件的版本3.14
,则这是一个已知问题。该修复程序将与下一个传入版本(4.0
)一起发布。相关的JIRA票证:SONARJAVA-1719
对于旧版本的插件(3.13.1
及之前版本),@SuppressWarnings
注释应按预期工作,并在使用规则键时隐藏问题。
答案 1 :(得分:0)
您可以使用该行后面的//NOSONAR
注释。
这并没有真正解决它,但这是SonarCube忽略它的方式。