【问题标题】:SonarQube Scanner error when run "sonar-scanner" command运行“sonar-scanner”命令时出现 SonarQube 扫描仪错误
【发布时间】:2018-03-30 14:06:06
【问题描述】:

我想使用 sonarQube 来分析一个 android 项目。 当我尝试安装 SonarQube Scanner 时,我遇到了一些问题。

从项目目录运行sonar-scanner 命令时收到以下错误。

*我已按照此链接https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner中的安装步骤进行操作

*我正在使用 SonarQube 6.5 和 SonarScanner 3.0.3

    ERROR: Error during SonarQube Scanner execution
  org.sonar.squidbridge.api.AnalysisException: Please provide compiled 
  classes of
  your project with sonar.java.binaries property
    at org.sonar.java.JavaClasspath.init(JavaClasspath.java:59)
    at org.sonar.java.AbstractJavaClasspath.getElements (AbstractJavaClasspath.java:281)
    at org.sonar.java.SonarComponents.getJavaClasspath(SonarComponents.java:
  141)
    at org.sonar.java.JavaSquid.<init>(JavaSquid.java:83)
    at org.sonar.plugins.java.JavaSquidSensor.execute(JavaSquidSensor.java:8
   3)
    at org.sonar.scanner.sensor.SensorWrapper.analyse(SensorWrapper.java:53)

    at org.sonar.scanner.phases.SensorsExecutor.executeSensor(SensorsExecutor.java:88)
    at org.sonar.scanner.phases.SensorsExecutor.execute(SensorsExecutor.java
  :82)
    at org.sonar.scanner.phases.SensorsExecutor.execute(SensorsExecutor.java
 :68)
    at org.sonar.scanner.phases.AbstractPhaseExecutor.execute(AbstractPhaseE
 xecutor.java:78)
    at org.sonar.scanner.scan.ModuleScanContainer.doAfterStart(ModuleScanCon
 tainer.java:179)
    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentC
ontainer.java:144)
    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer
    .java:129)
    at org.sonar.scanner.scan.ProjectScanContainer.scan(ProjectScanContainer
.java:261)
    at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectSc
anContainer.java:256)
    at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanC
     ontainer.java:245)
    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentC
      ontainer.java:144)
    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer
      .java:129)
    at org.sonar.scanner.task.ScanTask.execute(ScanTask.java:47)
    at org.sonar.scanner.task.TaskContainer.doAfterStart(TaskContainer.java:
       84)
    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentC
      ontainer.java:144)
    at 



       org.sonar.core.platform.ComponentContainer.execute (ComponentContainerjava:129)
    at org.sonar.scanner.bootstrap.GlobalContainer.executeTask(GlobalContain
         er.java:119)
    at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:116)
    at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.exec
        ute(BatchIsolatedLauncher.java:63)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
       java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(Iso
        latedLauncherProxy.java:60)
    at com.sun.proxy.$Proxy0.execute(Unknown Source)
    at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner
     .java:233)
    at org.sonarsource.scanner.api.EmbeddedScanner.runAnalysis(EmbeddedScann
      er.java:151)
    at org.sonarsource.scanner.cli.Main.runAnalysis(Main.java:123)
    at org.sonarsource.scanner.cli.Main.execute(Main.java:77)
    at org.sonarsource.scanner.cli.Main.main(Main.java:61)
   ERROR:
   ERROR: Re-run SonarQube Scanner using the -X switch to enable full debug 
 logging

.

如果您对此问题有任何解决方案,请帮助我。

【问题讨论】:

  • 错误信息你不清楚怎么办?
  • 是的,错误信息不清楚。我不明白我必须做什么? - @G.Ann-SonarSourceTeam
  • "请为您的项目提供带有 sonar.java.binaries 属性的编译类"
  • 在哪里可以找到 sonar.java.binaries? @G.Ann-SonarSourceTeam

标签: java android sonarqube sonarqube-scan software-quality


【解决方案1】:

您需要在分析之前构建您的项目。假设您的项目结构等于:

project
|- src
|- dependencies
|- classes

那么你应该配置:

sonar.sources = src
sonar.java.libraries = dependencies/**/*.jar
sonar.java.binaries = classes

阅读更多:Java Plugin and Bytecode

【讨论】:

    猜你喜欢
    • 2017-09-18
    • 2017-03-15
    • 2023-03-21
    • 2018-03-18
    • 2018-08-01
    • 2018-10-13
    • 2017-07-20
    • 2018-12-17
    • 2020-05-25
    相关资源
    最近更新 更多