构建服务器无法加载自定义代码分析规则集

时间:2014-05-09 06:30:06

标签: msbuild code-analysis fxcop build-server

我们正在对项目使用代码分析。作为其中的一部分,我们在构建服务器上启用了代码分析,允许连续检查。

现在我们收到此错误:

  

CA0063:*无法加载规则集文件' [name] .ruleset'或其中一个   依赖规则集文件。

[name]是我们内部网络的规则集,适用于所有人。

代码分析在每台本地计算机上运行完全正常,但在构建服务器上运行不正常。我们如何解决这个问题呢?

注意:

  • 我们使用自定义规则集
  • 我们尚未使用任何自定义规则

2 个答案:

答案 0 :(得分:2)

我也有这个问题。我如何解决它是将我的自定义规则集添加到版本控制(Git)中作为我的项目文件中的新目录。我们使用Jenkins作为CI,所以在我的Jenkins.build中,我确保在Jenkins服务器上指定我的规则集的绝对文件路径,你可以通过查看Jenkins上的Workspace来获得。例如,路径可能如下所示:

e:\Jenkins\workspace\SampleProj-Dev\Rulesets\CustomRules.ruleset

在Jenkins.build文件中,我使用以下命令为msbuild.exe程序执行添加了一个参数:

<arg line="/p:RunCodeAnalysis=true;CodeAnalysisRuleSet=e:\Jenkins\workspace\SampleProject-Dev\Rulesets\CustomRules.ruleset"/>

在我尝试使用相对路径但是包含许多子项目的构建之前,Jenkins尝试将路径附加到不断变化的路径上。此路径基于当前构建的子项目,导致您收到相同的错误。

答案 1 :(得分:-1)

今晚我偶然发现了一个已经遭受这种困扰的项目。我创建了一个新配置CHECKED,问题消失了。然后:

  1. 从配置管理器中删除现有配置;
  2. 退出并保存(此步骤可能没有必要);最后
  3. 从新创建的配置中重新创建已删除的配置,CHECKED
  4. 现在所有配置中的问题都已完全消失。

    这完全在Visual Studio 2013中。