我正在使用以下配置在构建服务器上构建和分析示例 C# 项目:
我在 Jenkins Job 中做了以下步骤:
如果在默认的 C# 配置文件中没有 FxCop 规则,则一切正常:项目在没有警告的情况下完成,然后进行分析。如果至少有一个 FxCop,则构建失败:
V:\JenkinsWkFolder\Test\.sonarqube\bin\targets\SonarQube.Integration.targets(402,5): error : FxCop must be installed when some of its rules are enabled in the SonarQube quality profile. FxCop is included as part of Visual Studio. [V:\JenkinsWkFolder\Test\CSharpConsoleApp\CSharpConsoleApp.csproj]
Done Building Project "V:\JenkinsWkFolder\Test\CSharpConsoleApp\CSharpConsoleApp.csproj" (Rebuild target(s)) -- FAILED.
Done Building Project "V:\JenkinsWkFolder\Test\CITest.sln" (rebuild target(s)) -- FAILED.
Build FAILED.
"V:\JenkinsWkFolder\Test\CITest.sln" (rebuild target) (1) ->
"V:\JenkinsWkFolder\Test\CSharpConsoleApp\CSharpConsoleApp.csproj" (Rebuild target) (2) ->
(FailIfFxCopNotInstalled target) ->
V:\JenkinsWkFolder\Test\.sonarqube\bin\targets\SonarQube.Integration.targets(402,5): error : FxCop must be installed when some of its rules are enabled in the SonarQube quality profile. FxCop is included as part of Visual Studio. [V:\JenkinsWkFolder\Test\CSharpConsoleApp\CSharpConsoleApp.csproj]
0 Warning(s)
1 Error(s)
FxCop 安装在生成服务器上,而 Visual Studio 没有安装。 MsBuildSonarRunner 在哪里查找 FxCop 可执行文件?
不知道您是否需要其他信息,请随时询问更多详细信息。
提前致谢。
此致,
马里奥。
最佳答案
SonarQube 仅支持 MSBuild 14 和 FxCop 14(MSBuild 12/FxCop 12 将很快被弃用)。
不幸的是,当与 VisualStudio 分开安装 MSBuild 工具时,FxCop 没有随 MSBuild 一起安装。要获得 FxCop 14,您必须安装 Visual Studio 2015(FxCop 10 是最后一个可以独立安装的版本)。
在互联网上,您可以找到无需 VS2015 手动安装 FxCop 14 的方法,但这不是 Microsoft 官方程序。
关于jenkins - FxCop 必须安装错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35159988/