目前我正在尝试将TFS 2015与SonarQube集成,但没有结果,情况是没有提到如何更新构建代理以考虑SonarQube.MSBuild.Runner。 当我开始集成这两个系统时,错误是c#sonar插件版本与SonarQube运行程序不兼容,因此决定覆盖构建代理中包含的所有文件for sonarqube prebuild C:*** \ Agent \ tasks \ SonarQubePreBuild \ 1.0.35 \ MSBuild.SonarQube.Runner-1.1,它使它工作,但我不确定这是否是正确的方法应该如何工作。
其他信息:
TFS版本:TFS 2015更新4.1
SonarQube版本:6.7.3
SonarQube C#插件版本:7.0.1.4822
MSbuild版本:15.0
MSBuild SonarQube扫描仪:4.2.0.1214-net46
修改 只是为了让您知道,我没有更新代理,我使用的是安装Sonarqube之前使用的相同代理。
答案 0 :(得分:0)
这是兼容性问题。实际上,错误消息已经表明正如您提到的那样" c# sonar plugin version is not compatible with the SonarQube runner
"。
只需查看SonarQube Extension for VSTS/TFS Compatibility和Compatibility with the SonarQube C# plugin
即可版本3.x兼容:
- TFS 2015 Update 3
- TFS 2017 Update 1
- VSTS
版本4.x兼容:
- TFS 2017 Update 2 +
- TFS 2018
- VSTS
注意: 如果您在早于2017 Update 2的TFS 上运行,则需要下载并手动安装最新的3.x版本 VSIX 。您可以在" Releases"下载VSIX。的页面 GitHub存储库您可以浏览SonarQube Extension 3.0
上的文档
因此,在您的方案中( TFS 2015 Update4.1 ),您需要按照"SonarQube Extension 3.0" documentation page上的说明进行操作。
以下文章供您参考:
INTEGRATE SONARQUBE IN YOUR TFS OR VSTS BUILD
<强>更新强>
仍然存在兼容性问题,基于此Plugin Version Matrix SonarQube Version: 6.7.3
与c# plugin 6.6
不兼容,它与C# plugin 7.1
兼容。
在您的方案中,我建议您使用SonarQube server v6.x
降级为c# plugin 6.6
,因为您必须安装"SonarQube Extension 3.0"
才能支持TFS 2015。