SonarQube在Maven构建中定义“忽略多个标准中的问题”

时间:2018-11-26 08:18:25

标签: maven sonarqube sonar-maven-plugin

sonar-maven-plugin是否支持将sonar-maven-plugin运行命令的“忽略多个标准上的问题”设置为-Dsonar.issue.ignore.multicriteriaNarrow the focus


任何可行的示例都欢迎。

2 个答案:

答案 0 :(得分:1)

我在项目中创建了类似的设置,因为我们需要设置来自maven命令的排除项(与您相同),而不是通过声纳gui(声纳文档仅指通过声纳gui的排除项)这是我们所做的在我们的项目中:

"-Dcommon.sonar.issue.ignore.multicriteria=e1,e2 " +
"-Dcommon.sonar.issue.ignore.multicriteria.e1.ruleKey=squid:S1845 " +
"-Dcommon.sonar.issue.ignore.multicriteria.e1.resourceKey=**/input/**/*.java " +
"-Dcommon.sonar.issue.ignore.multicriteria.e2.ruleKey=squid:S1845 " +
"-Dcommon.sonar.issue.ignore.multicriteria.e2.resourceKey=**/datatypes/**/*.java"

我们还有其他一些例外情况,我认为这将对公众有所帮助:

"-Dsonar.issue.ignore.allfile=r1,r2 " +
"-Dsonar.issue.ignore.allfile.r1.fileRegexp=@Input\\(.*\\) " +
"-Dsonar.issue.ignore.allfile.r2.fileRegexp=@Output\\(.*\\)"

答案 1 :(得分:0)

针对最终获得此答案的人的补充说明。我对此进行了很多测试,最后发现从扫描仪端(pom,命令行等)设置通用规则(以“ common-xxxx”开头的任何内容)将被忽略并且无法正常工作。可以将特定于语言的规则传递给行参数,这就是“ squid:S1845”规则被正确忽略的原因。这是SonarQube JIRA板上的问题链接,它说“不会得到解决”。

https://jira.sonarsource.com/browse/SONAR-8230

以下是我的答案的链接:https://stackoverflow.com/a/60570763/1766402