Msbuild “子节点”;2“;过早退出

Msbuild “子节点”;2“;过早退出,msbuild,visual-studio-2015,windows-10-universal,Msbuild,Visual Studio 2015,Windows 10 Universal,我最近将我的Windows 8.1应用程序重新定位到Windows 10。我在构建UI项目时遇到这个错误 "MSBUILD : error MSB4166: Child node "2" exited prematurely. Shutting down. Diagnostic information may be found in files in the temporary files directory named MSBuild_*.failure.txt." 这并不是特别有用,所以我

我最近将我的Windows 8.1应用程序重新定位到Windows 10。我在构建UI项目时遇到这个错误

"MSBUILD : error MSB4166: Child node "2" exited prematurely. Shutting down. Diagnostic information may be found in files in the temporary files directory named MSBuild_*.failure.txt."
这并不是特别有用,所以我去%temp%查找所述故障日志,但它不存在。我查错“临时”目录了吗


是什么导致了这个错误?我可以构建我的支持库项目而不会出现此错误。

因此,我手动完成了此操作。我最终创建了一个新项目,并将源文件逐块移动。移动某物后,检查项目以确保其仍在构建中

事实证明,我的App.xaml中存在这一行,这一行让我大吃一惊:

<ResourceDictionary Source="Assets/Resources/LayoutTemplates.xaml" p8:Name="LayoutTemplates" xmlns:p8="http://schemas.microsoft.com/winfx/2006/xaml" />

删除名称空间和“Name”属性修复了该问题


<> P.>我开始在C++项目中得到这些错误,因为11 NoV 2016是正确的。检查windows更新后,它在早上安装了以下针对windows 10的microsoft更新:

Update for Windows 10 Version 1511 for x64-based Systems (KB3150513)
https://support.microsoft.com/en-us/kb/3150513

Windows Malicious Software Removal Tool for Windows 8, 8.1, 10 and Windows Server 2012, 2012 R2, 2016 x64 Edition - November 2016 (KB890830)
https://support.microsoft.com/en-us/kb/890830

Cumulative Update for Windows 10 Version 1511 for x64-based Systems (KB3198586)
https://support.microsoft.com/en-us/kb/3198586

Security Update for Adobe Flash Player for Windows 10 Version 1511 (for x64-based Systems) (KB3202790)
https://support.microsoft.com/en-us/kb/3202790

Security Update for Adobe Flash Player for Windows 10 Version 1511 (for x64-based Systems) (KB3201860)
https://support.microsoft.com/en-us/kb/3201860
禁用多处理器编译/MP(在项目设置中,在C/C++下,常规)似乎可以避免这个问题


作为记录:在使用IncredBuild 7.22时发生。没有测试它是否也在没有不可信构建的情况下发生

我修复了.net framework(控制面板->程序和功能..->修复),因为我假设MSBuild所需的dll已损坏。它现在正在工作,但我不知道这是随机发生的还是一切正常。

重新启动Windows为我解决了这个问题。对于这种奇怪的错误,总是值得一试。

对我来说,在Windows Server 2012 R2上设置生成环境后出现了错误

我在同一工作区中并行运行多个MSBuild实例。按顺序或在不同的工作区中运行MSBuild实例可以解决此问题


如果给出其他答案,我的理解是错误信息是“某些东西出了可怕的错误并猛烈地崩溃了”。MSBuild健壮性错误,如果你问我的话。

在我的例子中是SlowCheetah,我为所有“内容”项设置了默认转换:


真的
这导致构建占用越来越多的内存(如1,7GB),最终抛出“子节点”消息。
重新启动windows后,我的VS2019将简单地关闭,而不是在每次生成时都出现错误。将内容转换设置为false解决了问题。

我也遇到了同样的错误。在我的示例中,存在MSBuild failure.txt文件,并列出了以下错误:

System.IO.FileLoadException: Could not load file or assembly 'System.Numerics.Vectors, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

在尝试了上面的一些选项之后,我偶然发现在GAC中安装了一个错误的Npgsql程序集。卸载Npgsql似乎已经解决了这个问题。因此,如果上述选项都不起作用,可以查看最近安装到GAC中的任何东西。

在我的情况下,重启VS 2019解决了问题。

我是一名IncredBuild员工,据我们所知,没有其他客户对IncredBuild 7.22出现的此问题提出投诉,如果您能联系我们,我们将不胜感激support@incredibuild.com如果此问题似乎与IncredBuild相关,那么我们可以对此进行检查,并在此线程中发布正确的答案。您好@Dori,我在使用IncredBuild 7.22时也遇到了相同的问题,但仅在更新到Visual Studio 2015 Update 3之后。不确定这是否是IncredBuild或msbuild的问题。不管怎样,我创建了一个罚单:它发生在我的7.3版本(Build1795)中。我相信这个错误是由一个比赛条件造成的,在这个条件下,一些预期的东西没有准备好。这是一个大型项目,我猜它发生在预处理器中。通常在大约3或4次重试后,它最终会完成。在我的情况下,我只是将MSBuild平台从“Auto”改为“X86”并工作。我真不敢相信,在尝试了很多东西之后,它就被修复了。重新启动VS没有帮助。
System.IO.FileLoadException: Could not load file or assembly 'System.Numerics.Vectors, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)