Свойство "sonar.cs.fxcop.assembly" должно быть установлено, и проект должен быть построен
Мы используем 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
1 ответ
Начиная с версии 4.0 плагина C#, рекомендуемым и единственным поддерживаемым способом анализа проектов является использование MSBuild SonarQube Runner, разработанного совместно с Microsoft. Смотрите документацию http://redirect.sonarsource.com/plugins/csharp.html
Этот новый способ анализа проектов C# полностью интегрируется с MSBuild и решает многие проблемы интеграции, например ту, с которой вы сталкиваетесь в настоящее время.
Плагин Analysis Bootstrapper для плагина проектов Visual Studio (он же плагин Visual Studio Bootstrapper), который вы пытаетесь включить sonar.visualstudio.enable
устарела и может быть не установлена на вашем сервере SonarQube. Если он есть, вы сможете безопасно удалить его после того, как перенесете все свои проекты на использование MSBuild SonarQube Runner. Вы также сможете удалить sonar-project.properties
файл перенесенных проектов.