Как выполнить.NET 4 анализа кода сервера сборки

На Windows Server 2003 R2 с.NET 4 SDK, но без Visual Studio 2010, я попытался создать решение для Visual Studio 2010 года с

msbuild MySolution.sln /p:RunCodeAnalysis=true

но это перестало работать.

Что требуется выполнить анализ кода такой среды?


Я получаю это сообщение об ошибке:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(129,9): error MSB6003: 
The specified task executable "FxCopCmd.exe" could not be run. 
Could not load file or assembly 
'Microsoft.VisualStudio.CodeAnalysis.Sdk, Version=10.0.0.0, Culture=neutral, PublicKeyToken= b03f5f7f11d50a3a' 
or one of its dependencies. 
The system cannot find the file specified.

Я установил FxCop от SDK, и без удачи указал на переменный FxCopDir на установленное местоположение FxCopCmd.exe, и также устанавливающий этот ключ реестра на то местоположение:

HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\10.0\Setup\EDev@FxCopDir
13
задан Ole Lynge 19 June 2010 в 12:22
поделиться

2 ответа

У меня была такая же проблема на моем сервере MSBuild, и я решил ее следующим образом:

  • Установка Windows SDK 7.1
  • Настройка ключей реестра FxCopDir и StanDir в HKEY_LOCAL_MACHINE \ Software \ Microsoft \ VisualStudio \ 10.0 \ Setup \ EDev (в Win32).

Затем я скопировал с компьютера разработчика в папку FxCop на сервере сборки следующее:

  • Папка Наборы правил (цель установки по умолчанию находится здесь: C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ Team Tools \ Static Analysis Tools \ FxCop)
  • Microsoft.VisualStudio.CodeAnalysis.Sdk.dll
  • Microsoft.VisualStudio.CodeAnalysis.Phoenix.dll
  • phx.dll

Найдите их на своем компьютере разработчика с установленной Visual Studio.

Затем используйте версию .NET 4.0 gacutil.exe для установки Microsoft.VisualStudio.CodeAnalysis.Sdk.dll в GAC.

Вы должны затем иметь возможность запускать анализ кода как часть сборки MSBuild, чтобы он работал правильно.

17
ответ дан 1 December 2019 в 23:14
поделиться

Другим вариантом может быть вызов исполняемого файла FxCop в качестве задачи сборки (из msbuildtasks ) с сохранением результата в виде XML-файла, который можно проанализировать с помощью большинства инструментов CI ( как Hudson и CC.NET)

0
ответ дан 1 December 2019 в 23:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: