MSBuild не удалось найти инструмент анализа кода
Моя работа Jenkins терпит неудачу с журналами ошибок ниже. Пожалуйста, предложите.
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(289,5): error : MSBuild could not locate the Code Analysis tool at ''. If MSBuild is being run from within the "Visual Studio Command Prompt", specify the path to the Code Analysis tool by setting the FXCOPDIR environment variable. [C:\test.csproj]
Done Building Project "C:\test.csproj" (Rebuild target(s)) -- FAILED.
Обновлены журналы ошибок
directory:"C:\OTA\AirSearch\BTS\src\packages\HttpWebAdapters.0.4.0.2002\lib\net35" /ruleSet:"=C:\OTA\AirSearch\BTS\.sonarqube\conf\\SonarQubeFxCop-cs.ruleset" /rule:"-C:\Program Files (x86)\Microsoft Visual Studio 12.0\Team Tools\Static Analysis Tools\FxCop\Rules" /searchgac /ignoreinvalidtargets /forceoutput /successfile /ignoregeneratedcode /saveMessagesToReport:Active,Excluded /timeout:120 /reportMissingIndirectAssemblies
* Error(s) occurred during FxCop initialization:
* An exception was raised attempting to load engine 'c:\program files (x86)\microsoft visual studio 12.0\team tools\static analysis tools\fxcop\Engines\PhoenixAnalysisEngine.dll'.
System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.VisualStudio.CodeAnalysis.Interop.dll' or one of its dependencies. The specified module could not be found.
at Microsoft.FxCop.Command.FxCopCommand.ProcessPlatformArgument(ArgumentDictionary argumentDictionary)
at Microsoft.FxCop.Command.FxCopCommand.Main2(String[] args)
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(289,5): error MSB6003: The specified task executable "FxCopCmd.exe" could not be run. Could not load file or assembly 'Microsoft.VisualStudio.CodeAnalysis.Sdk, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified. [C:\test.csproj]
Code Analysis Complete -- 0 error(s), 0 warning(s)
Done Building Project "C:\test.csproj" (default targets) -- FAILED.
The target "MvcBuildViews" listed in a BeforeTargets attribute at "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\Web\Microsoft.Web.Publishing.targets (843,131)" does not exist in the project, and will be ignored.
Done Building Project "C:\test.sln" (default targets) -- FAILED.
1 ответ
Из того, что я вижу на вашем скриншоте, вам нужно явно указать путь к вашему любимому инструменту анализа кода в вашем вызове msbuild (например, c.\ Program files\sonacube ...) или путем добавления пути к нему в вашу среду PATH. -variable (см. Как добавить путь к PATH-env-var)
И вы должны убедиться, что все зависимости от VS-FXCop могут быть найдены и разрешены. Лучший способ сделать это - вызвать визуальную студию var bat (в моей установке она может быть расположена в C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\vcvars32.bat для VS2015). Пожалуйста, убедитесь, что вы называете правильный сценарий. Если вы скопировали материал FxCop из другой установки Visual Studio, используйте этот скрипт. Если вы установили его из своего распространяемого файла, убедитесь, что вы также скопировали все зависимости.