我正在尝试使用Windows上的SOnarQube MsBuild在Jenkins的.NET Core 2.0解决方案上启动Sonarqube。
当我从Jenkins工作区执行以下脚本时,它工作正常:
C:\SonarQube\bin\MSBuild.SonarQube.Runner.exe begin /k:XXXX.Campaigns /n:CI /v: /d:sonar.host.url=http://x.x.x.x:9000 /d:sonar.verbose=true /d:sonar.projectBaseDir="C:\Program Files (x86)\Jenkins\workspace\CI" dotnet clean dotnet build C:\SonarQube\bin\MSBuild.SonarQube.Runner.exe end
但是,当我从詹金斯执行相同的命令时,我得到了以下消息:
SonarQube MSBuild集成失败:SonarQube无法收集有关您的项目的必需信息。可能的原因: 该项目尚未构建-必须在开始和结束步骤之间构建该项目。 使用了不支持的MSBuild版本来构建项目。目前MSBuild 14.0以上 尚未从同一文件夹启动所有开始,构建或结束步骤
SonarQube MSBuild集成失败:SonarQube无法收集有关您的项目的必需信息。可能的原因:
我使用Jenkins 2.46.2-MSBuild 15-Sonarqube 6.7和Sonar MsBuild 4.0.2.892。我尝试使用Jenkins构建步骤,命令步骤,带有脚本的命令步骤但未成功。在经典的.Net 4.5.2项目中,它可以工作。
Jenkins以本地系统用户身份运行。我将其更改为普通的Windows用户,并且成功了。dotnet构建未使用Sonarqube专用目标。谢谢@Valeri!