【问题标题】:The SonarQube MSBuild integration failed - SonarQube 7 with Scanner 4.0.2.892 and VS2017SonarQube MSBuild 集成失败 - SonarQube 7 with Scanner 4.0.2.892 and VS2017
【发布时间】:2018-08-15 17:21:39
【问题描述】:

我正在使用 SonarQube 7.0 和 SonarQube Scanner for MSBuild 4.0.2.892 并尝试关注 these instructions 在 Windows (ASP.NET Core) 上扫描我的 .NET 应用程序。以下三个命令是指令的一部分:

C:\SonarQube\Scanner\SonarQube.Scanner.MSBuild.exe begin /k:"org.sonarqube:sonarqube-scanner-msbuild" /n:"TradingPlatform" /v:"1.0"
"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe" /t:Rebuild
C:\SonarQube\Scanner\SonarQube.Scanner.MSBuild.exe end

然而,第一个命令的预处理成功,第二个命令的构建完成,第三个命令总是失败,如下所示:

====

适用于 MSBuild 4.0.2 的 SonarQube 扫描仪 默认属性文件位于 C:\SonarQube\Scanner\SonarQube.Analysis.xml

从 C:\SonarQube\Scanner\SonarQube.Analysis.xml 加载分析属性

后处理开始。

SonarQube MSBuild 集成失败:SonarQube 无法收集有关您的项目所需的信息。

可能的原因:

  1. 项目尚未构建 - 项目必须在开始和结束步骤之间构建
  2. 已使用不受支持的 MSBuild 版本来构建项目。目前支持 MSBuild 14.0 以上版本
  3. 开始、构建或结束步骤并未全部从同一文件夹启动

声纳属性文件的生成失败。无法完成 SonarQube 分析。

退出代码 1。

====

有人知道它为什么会失败吗?原因 1 不可能,因为我在步骤 2 中构建项目。原因 2 似乎不太可能(但并非不可能),因为我使用的是 MSBuild 15。原因 3 也不能像我一样从同一位置运行所有三个命令

【问题讨论】:

    标签: c# msbuild sonarqube sonarqube-scan


    【解决方案1】:

    其他可能的原因是:

    • 您的构建服务器正在使用本地系统帐户执行构建。尝试将构建用户更改为普通域或本地用户。
    • 您正在构建一个没有 ProjectGuid 属性(默认)且不属于解决方案的 .NET Core 项目。要解决此问题,您需要执行以下操作之一:
      • 在您的 csproj 的第一个 PropertyGroup 中添加 <ProjectGuid>XXXXX</ProjectGuid> 元素,其中 XXXXX 是新生成的 Guid。
      • 将您的项目添加到 Visual Studio 解决方案并构建 sln 文件而不是 csproj

    如果这没有帮助,请在扫描仪的begin 命令中添加/d:sonar.verbose=true,并将所有日志保存到文件中。从您的构建工作区压缩日志和.sonarqube 文件夹并将它们上传到这里:https://www.dropbox.com/request/CszJAO1ZNXFVl1gwo5hA

    【讨论】:

    • 感谢您的回复。您如何更改构建用户?在 MSBuild 文档中似乎找不到它。
    • 我还将日志 .sonarqube 文件夹上传到您的保管箱 - 再次感谢。
    • @duney,感谢您的文件!我更新了我的答案,显然扫描仪无法找到您项目的 Guid,请参阅我上面的说明以获取如何解决问题的建议。
    • 谢谢!这有点取决于您的这个建议:“将您的项目添加到 Visual Studio 解决方案并构建 sln 文件而不是 csproj”,从而解决了问题。虽然该项目已经是解决方案的一部分,但我正在从项目文件夹而不是解决方案文件夹运行分析。现在一切都好!
    • @duney 您在哪里指定从解决方案文件夹运行分析?是在命令中吗?您能否准确发布您为解决问题所做的工作?
    猜你喜欢
    • 2019-10-24
    • 2017-08-17
    • 1970-01-01
    • 2023-01-17
    • 2017-05-14
    • 2018-07-18
    • 2017-01-20
    • 2016-11-23
    • 2017-03-17
    相关资源
    最近更新 更多