【问题标题】:How to permanently ignore a false positive in SonarQube rule violation如何永久忽略 SonarQube 规则违规中的误报
【发布时间】:2014-11-24 08:56:55
【问题描述】:

当 Sonar 抛出特定的编码规则违规时,开发人员(或任何授权用户)如何忽略它?假设弹出一条“不遵循文件命名约定”规则,有没有办法可以将其声明为误报并单击某个按钮,以确保不显示该编码规则违规的进一步实例?

如果这不可能,是否有文档解释 SonarQube 如何将规则应用于代码,以便我可以操纵它的工作方式以永久消除误报。谢谢!

这个问题可能是以下问题的延伸

In Sonar, how to prevent checking some rules in some packages?

【问题讨论】:

    标签: sonarqube sonar-runner false-positive


    【解决方案1】:

    你的问题有两点:

    • 您检测到某个规则在您的代码中产生了误报问题?

      • 您可以在 Web UI 中将此问题标记为“误报”,然后在接下来的分析中将其忽略

      • 如果这是一个真正的误报,那么加入 SonarQube 用户邮件列表来讨论这个问题甚至是一个好主意,这样我们就可以创建一个 JIRA 票来解决这个问题

    • 您发现规则总是会产生与您的上下文无关的问题?

      • 这些问题根本不是误报,它们只是与您的项目无关

      • 要解决此问题,您只需停用用于项目的质量配置文件中的规则

    【讨论】:

    • 您给出的第二个答案回答了我的问题。但是只有管理员可以这样做吗?另外,我能知道软件如何将规则与给定的代码进行比较吗?这是从用户封装的,还是用户可以在安装文件中修改?
    • 用户需要有“Administer Quality Profiles and Gates”权限,不一定是“System Admin”权限。而且规则是用Java编码的,你无法修改。
    • 最后一个问题,我将自己的 C 和 C++ 代码规则导入 Sonar Runner。我想为用户提供一个 Web 界面来取消规则,如果它与项目无关,如果你有我想要问的问题,我只是在与你再次核对。我想知道我的 C 代码规则如何应用于代码(或 Sonar 规则配置系统如何工作),有没有办法可以操作它?
    • 我不明白你的问题,抱歉。请前往用户邮件列表并写一封全面而详细的邮件,解释您的用例和您的问题。谢谢。
    • 第一个选项仅适用于该分支的代码,当我从中拉出另一个分支时,我开始遇到同样的问题。这很烦人,SonarQube 社区应该解决这个问题。
    猜你喜欢
    • 2015-04-02
    • 1970-01-01
    • 2016-12-30
    • 2020-11-04
    • 1970-01-01
    • 1970-01-01
    • 2016-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多