web-dev-qa-db-ja.com

子ノード「2」が途中で終了しました

最近、Windows8.1アプリをWindows10にリターゲットしました。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%にアクセスして、上記の失敗ログを探しましたが、存在しません。間違った「一時」ディレクトリを探していますか?

このエラーの原因は何ですか?このエラーなしで、サポートするライブラリプロジェクトをビルドできます。

12
Darthg8r

それで、私はこれを手動で処理しました。最終的に、新しいプロジェクトを作成し、ソースファイルを1つずつ移動しました。何かを移動した後、プロジェクトをチェックして、まだビルドされていることを確認します。

この行は、それを爆破した私のApp.xamlに存在していたことがわかりました。

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

名前空間と「名前」属性を削除すると、問題が修正されました。

かなりあいまいですね...

4
Darthg8r

Windowsを再起動すると解決しました。このような奇妙なエラーを常に試す価値があります。

MSBuildに必要なdllが壊れていると想定したため、.netフレームワークを修復しました(コントロールパネル->プログラムと機能..->修復)。現在は機能していますが、これがランダムに発生するのか、それともすべて問題ないのかはわかりません。

2
Popa Andrei

私の場合、Windows Server 2012R2でビルド環境をセットアップした後にエラーが発生しました。

同じワークスペースで複数のMSBuildインスタンスを並行して実行していました。 MSBuildインスタンスを順番に、または異なるワークスペースで実行すると、問題は解決しました。

他の答えを考えると、私の考えは、「何かがひどく間違っていて、激しくクラッシュした」というエラーメッセージです。私に言わせれば、MSBuildの堅牢性のバグ。

0
Andreas

私の場合はSlowCheetahで、すべての「コンテンツ」アイテムにデフォルトの変換を設定しました。

<Content>
  <TransformOnBuild>true</TransformOnBuild>
  <Link></Link>
  <CopyToOutputDirectory></CopyToOutputDirectory>
</Content>

これにより、ビルドはますます多くのメモリ(1.7GBなど)を使用し、最終的に「子ノード」メッセージをスローしました。 Windowsを再起動した後、すべてのビルドでエラーが発生するのではなく、VS2019が単に閉じられました。コンテンツ変換をfalseに設定すると、問題が解決しました。

0
Muzzy

2016年11月11日からC++プロジェクトでこれらのエラーが発生し始めました。windows-updatesを確認すると、午前中にWindows10用の次のMicrosoftUpdateがインストールされました。

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++、一般)を無効にすると、問題が回避されるようです。

記録のために:incredibuild7.22を使用したときに発生しました。 incredibuildなしでも発生するかどうかはテストしませんでした。

0
kalmiya