在 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。