【问题标题】:Sonar Buildbreaker Skip Failing the BuildSonar Buildbreaker 跳过构建失败
【发布时间】:2017-06-24 20:03:07
【问题描述】:

我正在使用 Jenkins 工作来构建 .Net 项目。我添加了声纳分析。

D:\Temp\tools\Scanner_MSBuild-2.2\MSBuild.SonarQube.Runner.exe 开始 /k:myproj /n:myproj-full /v:1.0.0 /s:D:\Temp\SonarQube.Analysis。 xml

我已使用所需的声纳 URL 和登录凭据更新了“SonarQube.Analysis.xml”。但它失败并出现以下错误:

预处理开始。 正在准备工作目录... 适用于 MSBuild 2.2 的 SonarQube 扫描仪 09:07:00.437 更新构建集成目标... 09:07:00.451 获取分析配置设置... 09:07:01.239 在 SonarQube 服务器上找不到文件。网址:https:///api/qualityprofiles/search?defaults=true 09:07:01.239 预处理失败。退出代码:1

我尝试了以下操作:

D:\Temp\tools\Scanner_MSBuild-2.2\MSBuild.SonarQube.Runner.exe 开始 /k:myproj /n:myproj-full /v:1.0.0 /s:D:\Temp\SonarQube.Analysis。 xml -Dsonar.buildbreaker.skip=true

但是它抛出了错误,即 -Dsonar.buildbreaker.skip=true 是无法识别的命令。默认情况下,buildbreaker 设置为 false,我无法通过命令行将其设为 true。我使用的 SonarQube 版本低于 5.2。

我该如何解决这个问题?

谢谢

【问题讨论】:

  • 您是否使用 Jenkins Begin Analysis 和 End Analysis 构建步骤?
  • 我是。无法识别“-Dsonar.buildbreaker.skip=true”也会引发错误。 Jenkins Begin Analysis 插件自动采用此参数并抛出 Dsonar.buildbreaker.skip=true 无法识别的错误。我认为它正在发生,因为 Sonar 版本低于 5.2。有没有什么办法可以通过命令行理解“Dsonar.buildbreaker.skip”选项?

标签: msbuild sonarqube


【解决方案1】:

如果您正在使用“开始分析”和“结束分析”构建步骤,那么在 SonarQube.Analysis.xml 中配置您的服务器 URL 不会让您走得更远(正如您所了解的那样)。

相反,您需要在全局级别将服务器的位置配置为described in the docs。简要说明:

  • 管理 Jenkins > 配置系统 > SonarQube 配置
  • 添加 SonarQube
  • 填写您的服务器信息。

然后仔细检查您的构建步骤中是否选择了该服务器实例(如果您只配置了一台服务器,则构建步骤将默认使用它)。并进行分析。

【讨论】:

  • 非常感谢安的回复。正如您所提到的(以及链接中提到的),我已经在“管理 Jenkins”选项中配置了 SonarQube。我可以在“开始分析”插件的下拉列表中看到 url。我还填写了其他值(项目密钥、名称、版本)。在触发作业时,它会引发以下错误:SonarQube Scanner for MSBuild 2.2 04:39:10.325 Unrecognized command line argument: -Dsonar.buildbreaker.skip=true
  • 我在“管理 Jenkins”的 SonarQube 配置选项中的“高级”选项中看到,因为设置了附加参数“-Dsonar.buildbreaker.skip=true”并从那里获取这个值。由于它也是为其他基于 Java 的项目设置的,所以我无法更改它。我现在该如何处理?
  • 如果我使用 Jenkins 插件开始分析,则会抛出 Dsonar.buildbreaker.skip=true 无法识别的错误。如果我尝试命令行方式(在作业中使用“Windows powershell”插件),我会收到以下错误:在 SonarQube 服务器上找不到文件。 URL:mysonar.dummy.com/prod/api/qualityprofiles/search?defaults=true04:39:09.45 预处理失败。退出代码:1
猜你喜欢
  • 2011-10-06
  • 2016-02-21
  • 2017-07-08
  • 2017-05-21
  • 2011-05-18
  • 2015-09-04
  • 1970-01-01
  • 2018-10-10
  • 1970-01-01
相关资源
最近更新 更多