3

我们正在使用SonarQube 5.1最新的 MSBuild Sonar Runner C# 插件 4.2

在启用 FxCop 规则的情况下运行分析时,我们的原因是:

java.lang.IllegalArgumentException: The property "sonar.cs.fxcop.assembly" must be set and the project must have been built to execute 
FxCop rules. This property can be automatically set by the Analysis Bootstrapper for Visual Studio Projects pl
ugin, see: http://docs.codehaus.org/x/TAA1Dg. If you wish to skip the analysis of not built projects, set the property 
"sonar.visualstudio.skipIfNotBuilt".

这是sonar.project.properties

# Project identification
sonar.projectKey=TestSonar  
sonar.projectVersion=1.0-SNAPSHOT
sonar.projectName=TestSonar


#Core C# Settings
sonar.silverlight.4.mscorlib.location=C:/Program Files (x86)/Reference Assemblies/Microsoft/Framework/Silverlight/v5.0

#UnitTests
sonar.cs.vstest.reportsPaths=TestSonar_UnitTests/*.trx

#CodeCoverage
#sonar.cs.vscoveragexml.reportsPaths = C:\Users\sabharadwaj\Documents\Visual Studio 2013\Projects\TestSonar\TestSonar_UnitTests\VS2013_TestSonar.coveragexml
sonar.cs.opencover.reportPaths=C:\Users\sabharadwaj\Documents\Visual Studio 2013\Projects\TestSonar\TestSonar_UnitTests\VS2013_TestSonar.coveragexml

#FxCop
sonar.cs.fxcop.assembly=C:\Users\sabharadwaj\Documents\Visual Studio 2013\Projects\TestSonar
sonar.cs.fxcop.fxCopCmdPath=C:\Program Files (x86)\Microsoft Visual Studio 12.0\Team Tools\Static Analysis Tools\FxCop\FxCopCmd.exe
4

1 回答 1

1

自 C# 插件版本 4.0 起,推荐且唯一支持的分析项目的方法是使用与 Microsoft 联合开发的 MSBuild SonarQube Runner。请参阅文档http://redirect.sonarsource.com/plugins/csharp.html

这种分析 C# 项目的新方法与 MSBuild 完全集成,并解决了许多集成问题,例如您当前面临的问题。

您尝试启用的适用于 Visual Studio 项目插件的分析引导程序插件(又名 Visual Studio 引导程序插件)sonar.visualstudio.enable已被弃用,并且可能未安装在您的 SonarQube 服务器上。如果它在那里,您将能够在迁移所有项目以使用 MSBuild SonarQube Runner 后安全地卸载它。您还可以删除已sonar-project.properties迁移项目的文件。

于 2015-10-23T08:27:27.863 回答