【发布时间】:2019-09-20 04:58:16
【问题描述】:
我正在一个 java 项目上运行 SonarQube 扫描仪。在属性文件中有一个属性sonar.java.binaries=**/classes 用于指定项目的类位置。
扫描失败并显示此错误:
ERROR: Error during SonarQube Scanner execution
ERROR: Please provide compiled classes of your project with sonar.java.binaries property
何时:
- 我删除了
sonar.java.binaries属性 - 我将
sonar.java.binaries属性设置为null - 我将属性设置为
sonar.java.binaries=**/classes,但在项目目录中没有类目录或有空目录
扫描在以下情况下成功完成:
- 我设置了属性
sonar.java.binaries=**/classes并创建了一个classes 文件夹,其中放入了一个伪造文件blabla.class
所以我的问题是:如果扫描仪在没有它们的情况下也可以工作,为什么还需要这些类?
【问题讨论】:
-
如果声纳通过运行单元测试来确定代码覆盖率,它需要编译的类来运行单元测试。
-
你的意思是 Sonar 只需要单元测试覆盖的类?
-
什么原因你不提供课程?
-
我的意思是我说的。如果 Sonar 正在确定代码覆盖率,那么它需要已编译的类。它也可以将编译的类用于其他用途。我不知道 Sonar 想要编译类的所有原因。
标签: java sonarqube sonarqube-scan