0>MSBUILD : error MSB4166: Child node "3" exited prematurely. Shutting down.
这似乎是完全随机的,我无法随意重现。我正在运行VS2010 Win7 x64 MSBuild 4.0,但这个问题似乎与平台和操作系统无关。我并行构建解决方案(/m开关+BuildInParallel=True),我不想禁用此功能,因为我正在编译包含800多个项目的应用程序。有什么办法可以解决它吗?
编辑:当我安装了.NET 4.5开发人员预览版时,MSBuild 4.5中的错误日志记录得到了改进,现在错误字符串看起来像这样:
error MSB4166: Child node "3" exited prematurely. Shutting down. Diagnostic information may be found in files in the temporary files directory named MSBuild_*.failure.txt
我可以在Temp文件夹中找到错误日志文件。以下是MSBuild_*.failure.txt文件的内容:
System.InvalidOperationException: BuildEventArgs has formatted message while serializing!
at Microsoft.Build.Framework.LazyFormattedBuildEventArgs.WriteToStream(BinaryWriter writer)
at Microsoft.Build.Framework.BuildMessageEventArgs.WriteToStream(BinaryWriter writer)
at Microsoft.Build.Shared.LogMessagePacketBase.WriteToStream(INodePacketTranslator translator)
at Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.PacketPumpProc()