MSBuild找不到代码分析工具

时间:2017-03-13 13:06:02

标签: .net msbuild fxcop build-server

我的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.

enter image description here

更新了错误日志

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 个答案:

答案 0 :(得分:0)

从我在屏幕截图中看到的内容,您需要在msbuild-call中明确指定您喜欢的代码分析工具的路径(如c。\ program files \ sonacube ...)或者通过addind指向它的路径您的PATH环境变量(请参阅How to add path to PATH-env-var

您应该确保可以找到并解决VS-FXCop的所有家属。最好的方法是调用visual studio var bat(在我的安装中它可以位于C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ VC \ bin \ vcvars32.bat for VS2015)。请确保您拨打正确的脚本。如果您从其他Visual Studio安装中复制了FxCop,请使用此脚本。如果您已从可再发行组件安装它,请确保您已复制所有依赖项。

相关问题