阻止代码分析在Visual Studio 2012中重建项目和依赖项

use*_*185 6 code-analysis visual-studio-2012

将我们的解决方案升级到Visual Studio 2012后,我们希望利用新的代码分析功能.但是,运行时间太长,因为它在运行之前正在重建项目和依赖项目,即使代码没有更改也不需要重建.

如果不需要重建,有没有办法阻止它重建代码?

Joh*_*ers 1

如果您刚刚开始使用代码分析,那么您可能会误解这些症状。您将看到: e 1. 代码分析需要大量时间,并且 2. 在代码分析期间,项目会构建

您可能会结合这两种症状并得出结论:代码分析正在强制重建您的项目。这是一个错误的假设。尝试这个:

  1. 确保您的项目配置为在构建时运行代码分析
  2. 重建您的解决方案。注意需要多长时间
  3. 构建(不要重建)您的解决方案,但这一次,请注意需要多长时间

您会发现您的解决方案实际上“构建”了,但由于项目是最新的,编译器和其他工具不会运行。

因此,代码分析确实会首先运行解决方案的构建,但它将是像上面#3 那样的构建 - 没有任何更改,因此工具不会运行。仅代码分析工具 (FxCop) 将运行。这花费的时间比您预期的要长,但这是值得的。

在我们的环境中,我创建了一个从“调试”复制的“本地”解决方案和项目配置。此配置与“调试”基本相同,但不运行代码分析。这是我们的开发人员日常使用的。当代码签入 TFS 时,它会再次在“本地”配置中启动持续集成 (CI) 构建,而无需进行代码分析。

另一方面,夜间构建运行“调试”配置,因此它确实运行代码分析。我发现我们不需要对每个构建进行代码分析的结果,但每天一次是非常有必要的。

顺便说一句,代码分析并不新鲜。如果您查看链接到的 MSDN 页面,您会在“其他版本”下拉列表中找到该页面的 2010 版本。事实上,在成为产品的一部分之前,代码分析功能已作为名为“FxCop”的 Visual Studio 插件提供。

  • 您好,感谢您的回复。灵魂肯定会在代码分析上再次重建。输出窗口显示了这一点。自行重建和运行代码分析的时间几乎相同。重建时,代码分析不会运行。构建时间要快得多。 (5认同)