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

Sonar Quality Gates Plugin抛出NumberFormatException问题求助

解决Jenkins Sonar质量门插件的NumberFormatException错误

这个错误的核心问题很明确:Sonar Quality Gates插件原本期望从SonarQube获取数字格式的响应数据(比如质量门状态的标识值),但实际收到的是一段HTML内容——这说明你的Jenkins插件在请求SonarQube API时,没有拿到预期的接口数据,反而得到了网页(比如登录页、错误页或者无效路径的返回页)。

下面是一步步的排查和解决方法:

  • 检查SonarQube服务器URL配置
    进入Jenkins的「系统管理」→「系统设置」,找到SonarQube服务器的配置项:

    • 确认URL拼写完全正确,比如是否是http://your-sonar-host:9000(注意不要多加多余的路径后缀,也不要遗漏端口号);
    • 点击「测试连接」按钮,验证Jenkins能否正常连通SonarQube服务器,如果连接失败,先解决网络层面的问题(比如防火墙规则、端口开放状态)。
  • 验证SonarQube令牌的权限和有效性
    插件依赖SonarQube令牌来访问项目的质量门数据:

    • 确保你配置的令牌拥有目标项目的「浏览」权限(至少能读取项目的质量门状态);
    • 可以手动用curl命令测试API是否正常返回:
      curl -u <你的Sonar令牌>: "http://your-sonar-host:9000/api/qualitygates/project_status?projectKey=<你的项目密钥>"
      
      如果返回的是HTML而不是JSON数据,说明令牌无效、权限不足,或者SonarQube需要登录验证(而令牌没通过校验)。
  • 确认项目密钥完全匹配
    检查Jenkins构建后步骤中填写的项目密钥,和SonarQube平台上目标项目的密钥完全一致——注意项目密钥是大小写敏感的,不要有多余的空格或者拼写错误。

  • 排查SonarQube服务器状态
    直接访问SonarQube的网页端,确认服务器是否正常运行:

    • 如果SonarQube处于维护状态、返回500错误,或者开启了强制登录但你的令牌未授权,都会导致插件收到HTML响应。
  • 检查插件与SonarQube的版本兼容性
    老旧的Sonar Quality Gates插件可能不兼容新版本的SonarQube API,导致请求返回异常:

    • 进入Jenkins的「插件管理」,将Sonar Quality Gates插件更新到最新稳定版;
    • 查看插件文档确认其支持的SonarQube版本范围,确保和你当前使用的SonarQube版本匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 08:26:03