gpt4 book ai didi

java - 排除 pom.xml 中为 jacoco 配置的内容并排除 sonar 中的文件

转载 作者:行者123 更新时间:2023-11-30 06:08:30 37 4
gpt4 key购买 nike

我有一个 Java Multi maven 项目,我为每个子模块配置了 Jacoco maven 插件,以排除我不需要覆盖率报告的文件。我虽然成功了,因为我没有看到我在 jacoco 生成的 html 报告中排除的这些文件。我假设这些类文件已从 jacoco.exec 文件中排除。现在,我在 SonarQube 中使用这些积累的 jacoco.exec 文件,并且看到了所有子模块的覆盖范围,但是当我输入类详细信息时,我再次看到了我定义要排除的类。因此,我必须使用 sonar.exclusions 属性再次定义这些排除项,以免在 Sonar 中看到它们。

对于雅 cocoa :

<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/*JavaProjectApiModule.class</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>

对于 Sonar,我在父 pom.xml 的属性部分中配置:

<sonar.exclusions>
**/JavaProjectApiAModule.java
</sonar.exclusions>

我想一旦我使用 jacoco 配置排除它们,它们将不会被添加到 jacoco.exec 文件中,进而不会显示在 Sonar 中。但现在看来我必须维护 jacoco 和 Sonar 配置的排除,如果来自不同模块的类会变得一团糟......

我在这里遗漏了什么吗?是这样吗?维护与 Sonar 分离的 jacoco 的排除项?

提前致谢!

最佳答案

sonar.exclusions 参数定义扫描仪应忽略哪些文件。这意味着这些文件不会显示在 SonarQube 中。

在测试执行期间,JaCoCo 代理会跳过从 JaCoCo 报告中排除的文件。

当扫描仪扫描 JaCoCo 报告中未包含的文件时,它们会显示在 SonarQube 中,但没有代码覆盖率信息。当扫描仪忽略文件(它们的路径与 sonar.exclusions 匹配)时,它们不会显示在 SonarQube 中 - 无论它们是否包含在 JaCoCo 报告中。

关于java - 排除 pom.xml 中为 jacoco 配置的内容并排除 sonar 中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50758929/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com