Необходимо установить свойство 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

person SandBox    schedule 21.10.2015    source источник
comment
Прочтите сообщение. Что вы устанавливаете для sonar.cs.fxcop.assembly? stackoverflow.com/questions/23822527/   -  person Levesque    schedule 21.10.2015
comment
Обновил sonar.project.properties, чтобы показать пути FxCop. НО со свойствами FxCop или без них я получаю ту же ошибку... сборка fx.cop настроена на путь решения   -  person SandBox    schedule 21.10.2015
comment
Извините, я пропустил, что вы определили эти свойства, потому что они выглядят как комментарии. В ваших путях есть пробелы, вы пробовали заключать их в кавычки? Вы используете загрузчик Visual Studio? Действительно ли FxCop установлен в вашей системе?   -  person Levesque    schedule 21.10.2015


Ответы (1)


Начиная с версии плагина C# 4.0, рекомендуемым и единственным поддерживаемым способом анализа проектов является использование MSBuild SonarQube Runner, разработанного совместно с Microsoft. См. документацию http://redirect.sonarsource.com/plugins/csharp.html.

Этот новый способ анализа проектов C# полностью интегрируется с MSBuild и решает многие проблемы интеграции, такие как та, с которой вы сейчас сталкиваетесь.

Подключаемый модуль Analysis Bootstrapper для Visual Studio Projects Plugin (он же Visual Studio Bootstrapper Plugin), который вы пытаетесь включить с помощью sonar.visualstudio.enable, устарел и может быть не установлен на вашем сервере SonarQube. Если он есть, вы сможете безопасно удалить его после того, как перенесете все свои проекты для использования MSBuild SonarQube Runner. Вы также сможете удалить файл sonar-project.properties перенесенных проектов.

person Dinesh Bolkensteyn    schedule 23.10.2015
comment
На самом деле мы используем последнюю версию MSBuild SonarQube Runner. Я отредактировал свойства сонара. Все еще сталкиваюсь с той же проблемой. - person SandBox; 23.10.2015
comment
Не имеет смысла иметь sonar-project.properties при использовании MSBuild SonarQube Runner. Можете предоставить логи анализов? - person Dinesh Bolkensteyn; 23.10.2015
comment
Обратите внимание, что MSBuild SonarQube Runner не является подключаемым модулем SonarQube. Это отдельная загрузка, чем плагин SonarQube C# 4.2. - person Dinesh Bolkensteyn; 23.10.2015
comment
Спасибо. Проблема оказалась в том, что мы запускали Runner через оболочку powershell. Как только мы переключились на командную строку с правильными переключателями, все заработало. - person SandBox; 18.11.2015