MSBuild 在多台计算机上的行为不同
本文关键字:计算机 MSBuild | 更新日期: 2023-09-27 18:34:01
所以我有一个包含 6 个项目和一个 Web 项目的解决方案。Web项目中引用的一些dll(即Aspose.dll和Microsoft.Practices.ObjectBuilder2.dll)在项目文件中没有将copy local设置为true,但是当我在本地计算机上打开解决方案并查看引用的属性时,已将copy local设置为true。
我们有几台构建机器,在某些 MSBuild 上使用 dll 并将其输出到 bin 目录中,而在另一台计算机上将其视为复制本地 = false。
当我在失败的生成计算机上打开解决方案时,"将本地复制到 true"设置现已删除并设置为 false,从而导致生成失败。在所有其他计算机上,它显示为 true。
关于可能导致这种情况的原因的任何建议?
另一个提示是确保您不要引用 msbuild 文件中当前目录中的内容 - 即不要执行"../../Xyz",而是将它们与"已知"目录(如"$(MSBuildProjectDirectory)/../../Xyz" - 这样,当他们在各种上下文(构建代理)中运行时,他们仍然应该做正确的事情。
(其他众所周知的属性: http://msdn.microsoft.com/en-us/library/ms164309.aspx )