【发布时间】:2016-10-24 17:12:31
【问题描述】:
我们正在使用带有 SonarQube 和 Jenkins 的 Visual Studio 2015(原始版本,无更新),并不断收到消息:
警告 - * 不推荐使用 MSBuild 12 或 sonar-runner 来分析 C# 项目 *
但是,我们使用 MSBuild 14、SonarLint 和用于 MSBuild 的 SonarQube 扫描器。这在日志的开头得到了确认:
SonarQube Scanner for MSBuild Begin Step 2.0
Loading analysis properties from c:\Program Files (x86)\tools\MSBuild.SonarQube.Runner-2.1\SonarQube.Analysis.xml
15:25:15.073 Updating build integration targets...
15:25:15.079 Fetching analysis configuration settings...
15:25:15.51 Generating rulesets...
15:25:16.629 Provisioning analyzer assemblies...
15:25:16.63 Installing required Roslyn analyzers...
SonarQube 服务器是 5.1.2
我们使用了http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+MSBuild#AnalyzingwithSonarQubeScannerforMSBuild-msbuildcompat 的说明和 Jenkins 集成 http://docs.sonarqube.org/display/SCAN/From+Jenkins
我发现了SonarQube warning on MSBuild version 的问题,但我认为我们正确使用了 SonarLint。弃用消息的原因是什么?
【问题讨论】:
-
作为分析的第二步,您在解决方案上运行 MsBuild。在第一个输出行中,它显示了版本 MsBuild 版本号。它是否显示类似
Microsoft (R) Build Engine version 14.0...的内容? -
它说:Microsoft (R)-Buildmodul,版本 14.0.23107.0 版权所有 (C) Microsoft Corporation。 Alle Rechte vorbehalten。 (我们使用的是德语版 Visual Studio 2015,没有更新)。
-
这看起来不错。当我们找不到 Roslyn 为项目生成的输出文件时,正在写入该消息。 (在这种情况下,我们回退到逐个文件分析。)MsBuild 是否成功完成?您可以访问 Jenkins 工作区吗?您的解决方案旁边有一个
.sonarqube文件夹。在out文件夹中有项目特定的文件夹,其中包含ProjectInfo.xml文件。尝试找到一个(一些)没有ProjectInfo/AnalysisSettings/Property Name="sonar.cs.roslyn.reportFilePath"XML 条目的项目,以查看哪个项目导致了问题。 -
感谢您的提示。我们发现大多数项目都有 XML 条目,但也有一些项目没有条目。没有条目的项目是单元测试项目,是一个只供单元测试项目使用的类库。所以看起来这个问题与测试项目有关。您对如何解决这个问题有任何提示吗?
-
我应该注意到这些测试项目被排除在服务器配置中:
13:52:55.962 INFO - Excluded sources for coverage: 13:52:55.962 INFO - **/Projectname/**/*.cs
标签: jenkins sonarqube sonarlint sonarlint-vs