如果您的Build在Visual Studio中花费太长时间的最佳实践

Man*_*ish 20 language-agnostic visual-studio

我在Visual Studio中有适度大小的解决方案,大约需要5分钟才能构建(由于FxCop和其他后期构建步骤需要很长时间).我的问题是,Visual Studio在构建时停止响应.你不能继续工作,因为VS几乎挂起.我尝试使用两个VS实例,只使用一个用于构建,但它不时地崩溃.

我的问题是,如何不浪费时间看Visual Studio构建您的大/中等项目.对此有什么最佳做法吗?

tva*_*son 37

来源.

  • @Prateek 当 Stack Overflow 有幽默感时它被添加回来 (3认同)

Dav*_*cia 7

我刚刚学到的两个优秀的MSBuild技巧......

您可以使用/ m:n开关并行运行任务,其中n是要使用的处理器数.您所要做的就是在MSBuild任务上设置BuildInParallel.

另一个技巧是,如果你有几个<exec />任务要运行,你也可以通过使用每个命令之间的管道字符调用<exec command ="sleep 10 | sleep 10 | sleep 20"/>来实际并行运行它们. .一个更实际的例子:

<CreateItem Include="server1;server2;server3;server2">
  <Output ItemName="IISServer" TaskParameter="Include"/>
</CreateItem>
<CreateProperty Value="@(IISServer->'iisreset.exe /start %(Identity)', '|')">
  <Output TaskParameter="Value" PropertyName="IISServerStartAll" />
</CreateProperty>
<exec command="$(IISServerStartAll)" />
Run Code Online (Sandbox Code Playgroud)


Rom*_*ier 5

  1. 每次构建解决方案时,您都不需要运行静态代码分析.
  2. 通过合并一些减少项目的数量也可以帮助很多.

你有什么其他的帖子构建任务?