1

我在解决方案中设置了一个 C# 项目和另一个 C# 项目作为项目参考。当我使用 MSBuild 参数“/m /p:buildinparallel=true”在构建服务器上构建解决方案时,依赖项目首先构建,但似乎在依赖项目的构建后事件期间,引用它的项目开始构建并失败,因为它找不到引用的程序集(因为我的构建后事件就地修改了引用的程序集,并且在该处理期间它不可用)。

我可以看到引用项目在被引用项目的程序集完成修改之前创建了它的 ProjName.csprojResolveAssemblyReference.cache 文件,到那时,它已经失败了。

当我使用“/m:1 /p:buildinparallel=false”在构建服务器上构建相同的解决方案时,构建成功,尽管我认为这不是一个好的解决方法,因为它会损害我的性能而且我不确定找到根本原因。

我可以做些什么,让 MSBuild 直到依赖项目的构建后事件完成后才开始依赖项目的构建?

使用 MSBuild 4.5。

4

0 回答 0