【问题标题】:Sonarqube - what is rule key?Sonarqube - 什么是规则键?
【发布时间】:2019-02-23 05:49:10
【问题描述】:

我正在尝试更改有关 Sonarqube 设置的 Jenkins 工作。所以我打开了我的 Jenkins 工作配置,我看到了这样的东西

sonar.issue.ignore.multicriteria=e1,e2,e3,e4,e5
sonar.issue.ignore.multicriteria.e1.ruleKey=squid:S00112
sonar.issue.ignore.multicriteria.e1.resourceKey=**/*.java

我正在 Sonarqube 文档中搜索 ruleKey "squid:S00112",但找不到任何相关参考。

我需要添加更多规则来忽略。但我无法识别规则规则键值(如 ruleKey=squid:S00112)。

【问题讨论】:

    标签: sonarqube code-coverage static-code-analysis


    【解决方案1】:

    在 SonarQube 服务器上,规则键显示在规则描述的右上角。例如,您可以在 this rule description

    中查找 squid:S109

    SonarQube 规则密钥由 repository id : rule id

    组成

    存储库 ID

    每个语言分析器都会创建几个规则存储库,其 id 通常包含语言名称,但奇怪地使用“squid”的 java 分析器除外。

    例如,这是 sonarcloud.io (source) 上现有的存储库密钥列表

    LANGUAGE_ID : REPOSITORY_KEY_LIST
    abap        : abap, common-abap
    c           : c, common-c
    cpp         : cpp, common-cpp
    cs          : csharpsquid, common-cs
    css         : css, common-css, external_stylelint
    flex        : flex, common-flex
    go          : go, common-go, external_golint, external_govet
    java        : squid, common-java, external_checkstyle, external_findsecbugs, external_pmd, external_spotbugs
    js          : javascript, common-js, external_eslint_repo
    kotlin      : kotlin, common-kotlin, external_android-lint, external_detekt
    objc        : objc, common-objc
    php         : php, common-php
    plsql       : plsql, common-plsql
    py          : python, common-py, Pylint
    ruby        : ruby, common-ruby, external_rubocop
    swift       : swift, common-swift, external_swiftlint
    ts          : typescript, common-ts, external_tslint
    tsql        : tsql, common-tsql
    vbnet       : vbnet, common-vbnet
    web         : Web, common-web
    xml         : xml, common-xml
    

    规则 ID

    以前的规则可能有一个像“NoSonar”这样的 Pascal Case id,但现在,大多数规则都有一个由“S”表示的 id,后跟来自此存储库的规则的 jira 编号 jira.sonarsource.com/browse/RSPEC/

    例如,规则 id S109 匹配 RSPEC-109

    注意:rules.sonarsource.com/ 在 URL 中也使用RSPEC-109 格式,您可以轻松将其转换为 S109

    【讨论】:

      【解决方案2】:

      您可以在 SonarQube 服务器中找到特定规则的 ruleKey。

      步骤: 规则选项卡 -> 选择特定规则 -> 右上方是您的 RuleKey

      在本例中,ruleKey 为 Web:TableWithoutCaptionCheck

      截图:

      【讨论】:

        猜你喜欢
        • 2014-11-24
        • 2018-01-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-12
        • 2018-01-03
        • 1970-01-01
        相关资源
        最近更新 更多