You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何处理SonarQube‘report参数缺失’报错?重启Docker是否有效?

问题描述

在Concourse CI/CD流水线中突然出现SonarQube扫描失败,近期未修改Sonar相关配置,报错日志如下:

Preparing SonarQube scanner...
Starting sonar-scanner (type: cli)...
INFO: Scanner configuration file: /opt/sonar-scanner/conf/sonar-scanner.properties
INFO: Project root configuration file: /tmp/build/put/sonar-input/sonar-project.properties
INFO: SonarQube Scanner 4.0.0.1744
INFO: Java 1.8.0_151 Oracle Corporation (64-bit)
INFO: Linux 4.15.0-159-generic amd64
INFO: User cache: /root/.sonar/cache
INFO: SonarQube server 7.9.1
INFO: Default locale: "en_US", source code encoding: "UTF-8" (analysis is platform dependent)
WARN: SonarScanner will require Java 11+ to run starting in SonarQube 8.x
INFO: Sensor SurefireSensor [java] (done) | time=70ms
~
INFO: Sensor JavaXmlSensor [java]
INFO: Sensor JavaXmlSensor [java] (done) | time=3ms
INFO: Sensor HTML [web]
INFO: Sensor HTML [web] (done) | time=14ms
INFO: ------------- Run sensors on project
INFO: Sensor Zero Coverage Sensor
INFO: Sensor Zero Coverage Sensor (done) | time=4ms
INFO: Sensor Java CPD Block Indexer
INFO: Sensor Java CPD Block Indexer (done) | time=81ms
INFO: 55 files had no CPD blocks
INFO: Calculating CPD for 44 files
INFO: CPD calculation finished
INFO: Analysis report generated in 91ms, dir size=696 KB
INFO: Analysis report compressed in 319ms, zip size=316 KB
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 18.928s
INFO: Final Memory: 32M/995M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarQube Scanner execution
ERROR: The 'report' parameter is missing
ERROR: 
ERROR: Re-run SonarQube Scanner using the -X switch to enable full debug logging.
ERROR in /opt/resource/out : line 251 with exit code 2

当前SonarQube Docker容器状态:

docker ps
    CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                            NAMES
    968xxxxxxx5b        bitnami/sonarqube:7.9.1   "/app-entrypoint.sh …"   9 months ago        Up 8 months         0.0.0.0:80->9000/tcp             docker_sonarqube_1

请问该如何处理此错误?重启SonarQube Docker容器能否解决该问题?

解决方案

关于重启容器的结论

重启SonarQube Docker容器几乎无法解决这个问题。该报错是Concourse的Sonar资源在提交扫描报告时缺少report参数导致的,属于客户端(流水线/扫描器)配置或执行环节的问题,与SonarQube服务端运行状态无关。

具体排查步骤

  • 检查Concourse流水线的Sonar资源配置
    查看流水线中put Sonar资源的步骤,确认是否正确指定了report参数,该参数需要指向扫描生成的报告文件路径。示例配置如下:

    - put: sonarqube
      params:
        report: your-task-output/sonar-report.zip
    

    同时确认任务输出目录中确实存在该报告文件,Concourse的任务容器有权限访问该路径。

  • 启用扫描器debug日志定位问题
    在Sonar扫描的任务中添加-X参数重新执行,获取更详细的日志,确认报告生成的具体路径和文件名是否符合预期,排查扫描过程中是否有隐性错误导致报告路径异常。

  • 核对sonar-project.properties配置
    尽管你提到未修改Sonar配置,仍建议核对该文件中是否存在与报告路径相关的错误配置(如sonar.report.path),确保没有误写或遗漏。

  • 验证Concourse Sonar资源插件兼容性
    检查流水线使用的Concourse Sonar资源镜像版本,确认其与当前SonarQube 7.9.1版本兼容。部分旧版本资源插件可能存在参数传递逻辑的bug。

  • 手动执行验证环节
    在Concourse任务中添加调试步骤,手动执行sonar-scanner命令生成报告,随后手动调用Sonar资源的/opt/resource/out脚本并传递正确的report参数,以此定位是扫描环节还是资源提交环节的问题。

内容的提问来源于stack exchange,提问作者Sachiko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 09:10:28