java - Sonar 代码覆盖率不会反射(reflect)在没有类文件的服务器上

标签 java maven sonarqube code-coverage jacoco

我已经创建了 Maven 项目并创建了 surefire-report 以及 jacoco 报告。 jacoco.exec 也会生成,如果我将我的项目上传到带有编译类的服务器上,那么我可以看到我的代码覆盖率,但作为最佳实践,如果我省略类文件,我将看不到代码覆盖率。有人可以帮帮我吗? 可以引用以下屏幕截图,这将帮助您轻松理解我的问题。 如果我在服务器上上传我编译的类文件,那么它工作正常,如下所示, enter image description here

但我不想上传我的编译类文件,因为这不是最佳做法,因此我得到了这个结果, enter image description here

最佳答案

SonarQube 和 JaCoCo 仅在分析时需要类文件,但之后不会将它们存储在任何地方。虽然没有类文件 SonarQube 可以产生一些结果(部分甚至错误),但 JaCoCo 绝对不能并且需要类文件。

还应注意,两者(UI 中的 SonarQube 和不带 SonarQube 的 native 报告中的 JaCoCo)都显示了源代码。因此奇怪的是,您可以上传源代码,但不想上传类,但这是另一个故事,因为无论如何它们在分析后不会上传/使用。

关于java - Sonar 代码覆盖率不会反射(reflect)在没有类文件的服务器上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45800201/

相关文章:

java - 是否可以为 netbeans 上的 Web 服务操作创建自定义异常?

android - 找不到要导入的项目

plugins - 如何使用 Sonar API 创建自定义指标

javascript - SonarQube 在我的 JavaScript Maven 子模块上没有显示任何内容

java - JFreeChart如何绘制具有紧密间隔的点的虚线

java - 级联删除不适用于 Ektorp(couchdb 的 Java 持久性 API)

AnchorPane getwidth 问题中的 JavaFX Canvas

java - 在 Eclipse 中找不到 persistence.xml 中的 jar 文件

java - 能够避免在热交换类时在 tomcat 中重新加载 spring 上下文

maven - 无法在mockito中模拟类