在声纳中排除生成的代码

Posted

技术标签:

【中文标题】在声纳中排除生成的代码【英文标题】:Exclude generated code in sonar 【发布时间】:2012-11-22 05:53:30 【问题描述】:

如何从声纳处理和报告中排除生成的代码?

我尝试exclude**/*generated*,但像org.blayo.generated 这样的包仍在报告中:

<plugin>
  ...
  <artifactId>maven-checkstyle-plugin</artifactId>
  <configuration>

    <excludes>**/*generated*</excludes>

编辑:正确的正则表达式是**/generated/*.java

【问题讨论】:

【参考方案1】:

排除模式自 SonarQube 3.5 起发生了变化。下面是它现在的工作方式:

<properties>
   <sonar.exclusions>file:**/generated-sources/**</sonar.exclusions>
</properties>

来源:SonarQube JIRA

【讨论】:

这是最终让它为我工作的模式 它可以在没有 file: 前缀的情况下工作,重要的是 wildcard syntax(至少在 SonarQube 6/7 中)。使用&lt;sonar.exclusions&gt;target/generated-sources/**&lt;/sonar.exclusions&gt; 是一个小改进。【参考方案2】:

为此使用sonar.exclusions 属性:

<properties> 
  <sonar.exclusions>**/*generated*</sonar.exclusions>
</properties>

【讨论】:

以上是关于在声纳中排除生成的代码的主要内容,如果未能解决你的问题,请参考以下文章

声纳 jacoco hybris

在 gradle 中排除声纳类

声纳失败,无法索引两次。请检查包含/排除模式是否为主文件和测试文件生成不相交的集合

SonarQube:sonar.exclusions 参数不能排除文件夹

仅为声纳扫描仪添加某些规则而不是排除

如何从声纳中排除不推荐使用的类