排除在 pom.xml 中为 jacoco 配置并排除声纳中的文件
Exclude configured in pom.xml for jacoco and exclude files in sonar
我有一个 Java Multi maven 项目,我为每个子模块配置了 Jacoco maven 插件以排除我不想要覆盖率报告的文件。
我虽然成功了,因为我没有看到我在 jacoco 生成的 html 报告中排除的这些文件。
我假设这些 class 文件已从 jacoco.exec 文件中排除。
现在,我在 SonarQube 中使用了这些累积的 jacoco.exec 文件,并且看到了所有子模块的覆盖范围,但是当我进入 class 详细信息时,我再次看到了我定义为排除的 classes。
所以我不得不用 sonar.exclusions 属性 再次定义这些排除项,以免在声纳中看到它们。
对于 jacoco:
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/*JavaProjectApiModule.class</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
对于我在父 pom.xml 中配置的 Sonar,在属性部分:
<sonar.exclusions>
**/JavaProjectApiAModule.java
</sonar.exclusions>
我想一旦我使用 jacoco 配置排除它们,它们就不会被添加到 jacoco.exec 文件中,反过来也不会出现在声纳中..
但现在看来我将不得不维护 jacoco 和声纳配置的排除项,如果来自不同模块的 classes 将是一团糟...
我是不是漏掉了什么?是这样吗?维护与声纳分离的 jacoco 的排除项?
提前致谢!
sonar.exclusions
参数定义扫描仪应忽略哪些文件。这意味着这些文件不会显示在 SonarQube 中。
从 JaCoCo 报告中排除的文件在测试执行期间被 JaCoCo 代理程序跳过。
当扫描器扫描 JaCoCo 报告中未包含的文件时,它们将显示在 SonarQube 中,但没有代码覆盖信息。当扫描器忽略文件(它们的路径匹配 sonar.exclusions
)时,它们不会显示在 SonarQube 中——无论它们是否包含在 JaCoCo 报告中。
我有一个 Java Multi maven 项目,我为每个子模块配置了 Jacoco maven 插件以排除我不想要覆盖率报告的文件。 我虽然成功了,因为我没有看到我在 jacoco 生成的 html 报告中排除的这些文件。 我假设这些 class 文件已从 jacoco.exec 文件中排除。 现在,我在 SonarQube 中使用了这些累积的 jacoco.exec 文件,并且看到了所有子模块的覆盖范围,但是当我进入 class 详细信息时,我再次看到了我定义为排除的 classes。 所以我不得不用 sonar.exclusions 属性 再次定义这些排除项,以免在声纳中看到它们。
对于 jacoco:
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/*JavaProjectApiModule.class</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
对于我在父 pom.xml 中配置的 Sonar,在属性部分:
<sonar.exclusions>
**/JavaProjectApiAModule.java
</sonar.exclusions>
我想一旦我使用 jacoco 配置排除它们,它们就不会被添加到 jacoco.exec 文件中,反过来也不会出现在声纳中.. 但现在看来我将不得不维护 jacoco 和声纳配置的排除项,如果来自不同模块的 classes 将是一团糟...
我是不是漏掉了什么?是这样吗?维护与声纳分离的 jacoco 的排除项?
提前致谢!
sonar.exclusions
参数定义扫描仪应忽略哪些文件。这意味着这些文件不会显示在 SonarQube 中。
从 JaCoCo 报告中排除的文件在测试执行期间被 JaCoCo 代理程序跳过。
当扫描器扫描 JaCoCo 报告中未包含的文件时,它们将显示在 SonarQube 中,但没有代码覆盖信息。当扫描器忽略文件(它们的路径匹配 sonar.exclusions
)时,它们不会显示在 SonarQube 中——无论它们是否包含在 JaCoCo 报告中。