SonarQube从6.4升级到6.5会破坏扫描仪

Pra*_*ddi 10 sonarqube sonarqube-scan

  1. 我在sonarQube6.4上并升级到6.5
  2. 声纳扫描仪是3.0.3
  3. 现在升级后,只要源路径中有java文件,扫描程序就会失败.如果我不扫描java文件一切正常.
  4. 但是,如果我回滚使用6.4版本,一切正常,那么有任何回归吗?当我使用-X命令运行scanner命令时,这是堆栈跟踪.因此,提供所有已编译分类的位置是6.5的授权,有没有办法忽略它.

04:56:21.218 DEBUG:Sensors:JavaSquidSensor - > SurefireSensor - > JaCoCoSensor - > SonarJavaXmlFileSensor - > Analyzer for"php.ini"files - > Zero Coverage Sensor - > CPD Block Indexer 04:56:21.218 INFO:Sensor JavaSquidSensor [java ] 04:56:21.558信息:已配置的Java源代码版本(sonar.java.source):无04:56:21.565 INFO:JavaClasspath初始化04:56:21.570信息:------------- -------------------------------------------------- --------- 04:56:21.571 INFO:EXECUTION FAILURE 04:56:21.571 INFO:------------------------- ----------------------------------------------- 04:56 :21.571 INFO:总时间:6.545s 04:56:21.707 INFO:最终记忆:51M/1083M 04:56:21.707 INFO:--------------------- -------------------------------------------------- - 04:56:21.707错误:SonarQube扫描程序执行期间出错org.sonar.squidbridge.api.AnalysisException:请使用org.sonar.java.JavaClasspath.init(JavaClasspath.)中的sonar.java.binaries属性提供项目的已编译类. java:59)at org.sonar.java.AbstractJavaClasspath.getElements(AbstractJavaClasspath.java:281)在org.sonar.java.SonarComponents.getJavaClasspath(SonarComponents.java:141)在org.sonar.java.JavaSquid.(JavaSquid.java:83)在org.sonar.plugins.java.JavaSquidSensor.execute(JavaSquidSensor.java:83)org.sonar.scanner.sensor.SensorWrapper.analyse(SensorWrapper.java:53)org.sonar.scanner.phases.SensorsExecutor.executeSensor( SensorsExecutor.java:88)位于org.sonar.scanner的org.sonar.scanner.phases.SensorsExecutor.execute(SensorsExecutor.java:82)org.sonar.scanner.phases.SensorsExecutor.execute(SensorsExecutor.java:68) .phases.AbstractPhaseExecutor.execute(AbstractPhaseExecutor.java:78)在org.sonar.scanner.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:179)在org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:144 )org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:129)org.sonar.scanner.scan.ProjectScanContainer.scan(Proj)ectScanContainer.java:261)在org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:256)在org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:245)在org.sonar.core .platform.ComponentContainer.startComponents(ComponentContainer.java:144)在org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:129)在org.sonar.scanner.task.ScanTask.execute(ScanTask.java:47 )在在org.sonar.core.platform.ComponentContainer org.sonar.scanner.task.TaskContainer.doAfterStart(TaskContainer.java:84)在org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:144).在org.sonarsource的org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:116)的org.sonar.scanner.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:119)执行(ComponentContainer.java:129) sun.reflect.NativeMethodAccessorImpl.invok中的.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:63)E0(本机方法)在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)在java.lang.reflect.Method.invoke(Method.java: 498)org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)at com.sun.proxy.$ Proxy0.execute(Unknown Source)at org.sonarsource.scanner.api.EmbeddedScanner.doExecute (EmbeddedScanner.java:233)位于org.sonarsource的org.sonarsource.scanner.api.EmbeddedScanner.runAnalysis(EmbeddedScanner.java:151)org.sonarsource.scanner.cli.Main.runAnalysis(Main.java:123). scan.cli.Main.execute(Main.java:77)at org.sonarsource.scanner.cli.Main.main(Main.java:61)04:56:21.710 DEBUG:Execution getVersion 04:56:21.711 DEBUG:Execution停

当我使用6.4运行相同时,它工作正常,我在控制台中看到的唯一警告是:

04:52:42.738警告:未提供依赖关系的字节码来分析源文件,最终可能会得到不太精确的结果.可以使用sonar.java.libraries属性提供字节码

小智 21

SonarQube扫描程序执行期间出错org.sonar.squidbridge.api.AnalysisException:请使用sonar.java.binaries属性提供项目的已编译类

由于SonarJava 4.12,你必须指定sonar.java.binaries财产 https://docs.sonarqube.org/display/PLUG/Java+Plugin+and+Bytecode

示例:

sonar-scanner -Dsonar.projectKey=fr.demo:my-project -Dsonar.sources=. -Dsonar.java.binaries=.
Run Code Online (Sandbox Code Playgroud)


sla*_*dan 1

错误消息显示:

Error during SonarQube Scanner execution org.sonar.squidbridge.api.AnalysisException:
Please provide compiled classes of your project with sonar.java.binaries property
Run Code Online (Sandbox Code Playgroud)

.class除了文件之外,java 传感器似乎还需要这些文件.java

你可以:

  • 将这些文件添加到分析中(顺便说一下,它将为您提供更有价值的声纳发现!)
  • 尝试添加和删除文件以查明是哪一段代码导致问题并将其报告为 Sonar Java bug