SonarQube 将所有问题添加为 Code Smell
SonarQube adds all issues as Code Smell
升级到 5.5 版本后,现在最新的 (5.6) SonarQube 总是将我通过插件创建的问题显示为 "Code Smell"。我想了解更多关于分类的信息,以及如何将它们添加为其他类型("Vulnerability" 和 "Bug")。我创建问题的代码如下:
Issuable issuable = this.resourcePerspectives.as(Issuable.class, inputFile);
if (issuable != null) {
Issue issue = issuable.newIssueBuilder()
.ruleKey(activeRule.ruleKey())
.line(vulnerability.getLine())
.message(someMessage)
.severity(severity)
.build();
issuable.addIssue(issue))
} //...
当前对错误和漏洞的支持是基于标签的 "creative implementation"(阅读 "hack")。因此,将 "bug" 标记添加到您的规则中,它的问题将作为错误出现。将 "security" 标记添加到规则,其问题将作为漏洞提出。
同时带有 "bug" 和 "security" 标签的规则将被视为错误规则。
为了将来参考,此机制预计会在 "near" 未来发生变化,但目前没有时间表。
编辑
API 的当前 (6.1) 版本提供了简单声明规则类型的能力。
升级到 5.5 版本后,现在最新的 (5.6) SonarQube 总是将我通过插件创建的问题显示为 "Code Smell"。我想了解更多关于分类的信息,以及如何将它们添加为其他类型("Vulnerability" 和 "Bug")。我创建问题的代码如下:
Issuable issuable = this.resourcePerspectives.as(Issuable.class, inputFile);
if (issuable != null) {
Issue issue = issuable.newIssueBuilder()
.ruleKey(activeRule.ruleKey())
.line(vulnerability.getLine())
.message(someMessage)
.severity(severity)
.build();
issuable.addIssue(issue))
} //...
当前对错误和漏洞的支持是基于标签的 "creative implementation"(阅读 "hack")。因此,将 "bug" 标记添加到您的规则中,它的问题将作为错误出现。将 "security" 标记添加到规则,其问题将作为漏洞提出。
同时带有 "bug" 和 "security" 标签的规则将被视为错误规则。
为了将来参考,此机制预计会在 "near" 未来发生变化,但目前没有时间表。
编辑
API 的当前 (6.1) 版本提供了简单声明规则类型的能力。