【发布时间】:2011-09-09 01:46:03
【问题描述】:
我对 MSBuild 知之甚少。
最近我读到将大型解决方案的“本地复制”设置为 false 可以显着减少编译时间。 我找到了一种将默认设置设置为 false 的方法,方法是在 MSBuild 扩展路径中设置一个名为 CustomAfterMicrosoftCommon.targets 的机器范围文件。
这种方法效果很好,但是这种方法存在一些问题。
-此默认值设置是系统范围的,我希望它仅适用于特定解决方案。我不在项目级别这样做,因为我在几个不同的解决方案中有很多。
-我希望将此默认值应用于“非输出项目”。我的意思是类库项目不应该将本地复制设置为true。但是,主应用程序项目需要将类库依赖项复制为 true,因为它需要运行。 理想情况下,对于那些输出项目,我想回退到更智能的开箱即用默认值,该默认值足够聪明,可以确定引用是否应该是私有的。我想我可以将默认的 Copy Local 设为 false,然后在需要的地方明确地将 Copy Local 设置为 true。鉴于您通常没有很多输出项目,这还不错,但我想看看是否有人提出了更好的解决方案。
有什么想法吗?
【问题讨论】:
-
您能否使用 CustomAfterMicrosoftCommon 文件更详细地解释您的解决方案?
标签: visual-studio visual-studio-2010 msbuild