SonarQube Scanner:真的需要二进制文件吗?
SonarQube Scanner: are binaries really needed?
我是 运行 SonarQube 扫描仪,负责 java 项目。在属性文件中有一个 属性 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
并创建了一个 类 文件夹并在其中放入了一个伪文件 blabla.class
所以我的问题是:如果扫描仪在没有它们的情况下也能正常工作,为什么还需要 类?
Java bytecode is required
Analyzing a Java project without providing the Java bytecode produced by javac
(Android users: Jack doesn't provide the required .class
files) and all project dependencies (jar files) is possible, but will result in an increased number of false negatives, i.e. legitimate issues will be missed by the analyzer.
From SonarJava version 4.12 binary files are required for java projects with more than one java file. If not provided properly, analysis will fail with the message
Please provide compiled classes of your project with sonar.java.binaries property
See Java Plugin and Bytecode for how to provide the Java bytecode if you are not using Maven to run your analysis.
如您所见,需要字节码。如果您不向分析器提供字节码,那么构建的 syntax/dependecy 树将丢失一些数据,并且您会得到更多的漏报(应该报告但没有报告的问题)。
我是 运行 SonarQube 扫描仪,负责 java 项目。在属性文件中有一个 属性 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
并创建了一个 类 文件夹并在其中放入了一个伪文件blabla.class
所以我的问题是:如果扫描仪在没有它们的情况下也能正常工作,为什么还需要 类?
Java bytecode is required
Analyzing a Java project without providing the Java bytecode produced by
javac
(Android users: Jack doesn't provide the required.class
files) and all project dependencies (jar files) is possible, but will result in an increased number of false negatives, i.e. legitimate issues will be missed by the analyzer.From SonarJava version 4.12 binary files are required for java projects with more than one java file. If not provided properly, analysis will fail with the message
Please provide compiled classes of your project with sonar.java.binaries property
See Java Plugin and Bytecode for how to provide the Java bytecode if you are not using Maven to run your analysis.
如您所见,需要字节码。如果您不向分析器提供字节码,那么构建的 syntax/dependecy 树将丢失一些数据,并且您会得到更多的漏报(应该报告但没有报告的问题)。