更快的ResolveAssemblyReference任务

时间:2013-04-23 13:54:50

标签: visual-studio msbuild

我想更快地构建我的解决方案。 从VS输出窗口我看到ResolveAssemblyReference Task需要很长时间。

如何让它更快?也许我应该为Assembly Reference Resolve任务指定路径。

我的解决方案中的所有程序集都在一个文件夹中。所以这应该是一个快速的操作。

我认为这对很多情况都很有用。

1 个答案:

答案 0 :(得分:2)

正如您在在线文档中所读到的,ResolveAssemblyReference任务用于确定依赖项列表。从在线文档:

  

确定依赖于指定程序集的所有程序集。   这包括第二个和 n阶依赖关系。

要提高当前的构建性能,您可以执行以下两项操作:

  1. 减少依赖性
  2. 为GAC程序集引用将“本地复制”设置为“False”
  3. 减少依赖性

    由于任务可以将依赖项搜索到“n阶”,因此减少依赖项是最佳选择。解决方案/项目的依赖关系越多,任务运行的速度就越慢。

    为GAC程序集引用

    将Copy Local设置为“False”

    您可以做的另一件事是确保{<3}}值设置为false,以便知道在GAC中的任何程序集引用。这不会在评估过程中浪费那么多时间,但它会确保Visual Studio不会花时间将程序集复制到已经通过GAC访问的bin中。请记住,如果目标计算机(将使用app / library / etc)将在其GAC中没有某个程序集