关闭声纳的某些代码

是否可以针对特定的代码块关闭声纳(www.sonarsource.org)测量,而哪些代码不想测量?


一个示例是Findbugs输出的“保留堆栈跟踪”警告。当离开服务器时,如果客户端不知道该异常,我可能只想将消息传递回客户端,而不包括我刚刚捕获的实际异常(因为该客户端没有该JAR,例如包含例外)。


慕无忌1623718
浏览 474回答 3
3回答

catspeake

您可以使用SuppressWarnings注释类或方法@java.lang.SuppressWarnings("squid:S00112")squid:S00112在这种情况下是声纳问题ID。您可以在Sonar UI中找到此ID。转到问题明细。查找您要禁止显示警告的问题。在代码的红色问题框中,有一个带有给定问题定义的“规则”链接。单击后,您将在页面顶部看到ID。

侃侃尔雅

我建议您尝试使用来禁止显示特定警告@SuppressWarnings("squid:S2078")。要取消显示多个警告,您可以这样操作 @SuppressWarnings({"squid:S2078", "squid:S2076"})还有//NOSONAR一条评论告诉SonarQube忽略特定行的所有错误。最后,如果您对用户界面拥有适当的权限,则可以直接从用户界面发出错误肯定的标志。我建议抑制特定警告的原因是,更好的做法是阻止特定问题,而不要使用//NOSONAR并冒着意外地在代码中蠕动Sonar问题的风险。您可以在常见问题解答中了解更多信息注意:GáborBakos指向的是现在的404s较早的FAQ。这是我的第一个Google搜索结果,所以我想帮助其他可能有相同问题的人编辑:16/6/30 SonarQube现在称为SonarLint如果您想知道如何查找鱿鱼编号。只需单击Sonar消息(例如Remove this method to simply inherit it.),Sonar问题就会扩大。左下角将显示鱿鱼编号(例如,squid:S1185可维护性>可理解性)所以你可以通过抑制它 @SuppressWarnings("squid:S1185")
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java