Не удается отобразить ошибки StyleCop как ошибки сборки (а не предупреждения)

Я пытаюсь заставить сборки терпеть неудачу, если они не проходят StyleCop. В настоящее время они отображаются только как предупреждения. Я пытался следовать документации здесь.

Я добавил в свой файл CSProj <Import Project="$(ProgramFiles)\MSBuild\StyleCop\v4.7\StyleCop.targets" />, который, кажется, правильно включает StyleCop.

Затем я добавил StyleCopTreatErrorsAsWarnings, установленный в false в свой файл csproj. Вот начало моего файла CSProj:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
  <Import Project="$(ProgramFiles)\MSBuild\StyleCop\v4.7\StyleCop.Targets" />  
  <PropertyGroup>
    <StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>

Это приводит к появлению предупреждений в Bamboo (моем сервере непрерывной интеграции), но без ошибок. То же самое происходит в Visual Studio.

Почему ошибки StyleCop по-прежнему отображаются в виде предупреждений?


person Jake    schedule 14.11.2014    source источник
comment
Возможно ли, что $ (StyleCopTreatErrorsAsWarnings) переопределяется в командной строке MSBuild? Если вы можете запустить свою сборку с диагностикой, это позволит вам это проверить.   -  person Stephen Connolly    schedule 15.11.2014


Ответы (1)


вам нужно переместить импорт stylecop после строки импорта C #. Также вам необходимо добавить свойство StyleCopEnabled = true в файл csproj

person boxkita    schedule 18.11.2014