当我在本地运行 MSBuild v4 时,它可以很好地构建并将所有项目和第 3 方 DLL 复制到我的网站 BIN 文件夹中。
但是,当我在构建服务器上运行完全相同的脚本时,它不会将任何引用的项目 DLL 或第 3 方 DLL 复制到网站 bin 文件夹中。
如何让 MSBuild 在两个环境中正确复制?我的 .NET4 安装有问题吗?
我的 MSBuild 文件中的编译开始如下:
<Target Name="Compile">
<MSBuild Projects="..\MySolution.com.sln" Properties="Configuration=Debug">
</MSBuild>
</Target>
最佳答案
这最终被证明是一个愚蠢的问题。我猜 VS2010 项目文件不再需要专门具有“私有(private)”属性,因为我的不存在。
问题是我偶然使用了 MSBuild v3.5,它期望这些属性。
一旦我切换到在我们的构建服务器上使用 MSBuild v4,问题就解决了。
关于msbuild - 为什么 MSBuild 会在本地复制所有 DLL,但在我们的 Build Server 上似乎忽略了 CopyLocal=True?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5143259/