我正在尝试构建大约 600 个项目,有些是 .net 2.0,有些是 3.5。我正在使用带有所有最新 Windows 更新的 Windows 2003 Enterprise Edition 32 位。
当 maxcpucount 为 1 时构建良好。如果我将其提高以尝试提高性能,则会出现参考错误。当我查看发生错误的项目引用时,它们似乎应该按顺序构建。
下面我提供了一个导致构建被破坏的错误示例。不要挂断项目名称或相对路径,因为我已经更改了它,所以我不会与我的雇主发生麻烦。
这就像当一个以上的核心正在构建解决方案时,无法正确解决相关项目引用。
"C:\SVN\MyLibrary\MyLibrary.csproj" (default target) (15) ->
"C:\SVN\FileProcessor\FileProcessor.csproj" (default target) (17) ->
(ResolveProjectReferences target) ->
C:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets : warning : The referenced project '..\..\Manager\Manager.csproj' does not exist.
"C:\SVN\MyLibrary\MyLibrary.csproj" (default target) (15) ->
"C:\SVN\FileProcessor\FileProcessor.csproj" (default target) (17) ->
(CoreCompile target) ->
FileProcessor.cs(18,39): error CS0234: The type or namespace name 'Manager' does not exist in the namespace 'TheNamespace' (are you missing an assembly reference?)
我没有在解决方案文件上使用 msbuild。我使用通配符选择所有 csproj 文件,然后将它们提供给 msbuild。对于开发,我们有多种解决方案用于系统的不同组件。95% 是项目参考,唯一的二进制参考是核心实用程序库