2016-01-20 232 views
3

我最近再定位我的Windows 8.1的應用程序到Windows 10.構建UI項目時,我得到這個錯誤,子節點「2」退出過早

"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%查找失敗日誌,並且它不存在。我在錯誤的「temp」目錄中查找?

是什麼導致了這個錯誤?我可以建立我的支持庫項目,而不會出現這個錯誤

回答

2

所以,我通過手動工作。我最終創建了一個新項目並將源文件一塊一塊地移動。移動東西后,檢查項目以確保它仍然建成。

事實證明,這條線在我的App.xaml存在自爆起來:

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

卸下命名空間和「名稱」屬性固定的問題。

相當晦澀呵呵...

0

,我開始收到這些錯誤在我們的C++項目,因爲正是11月11日2016年檢查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++,常規下)似乎避免了這個問題。

備案:發生在使用incredibuild 7.22時。沒有測試,如果它也沒有incredibuild發生。

+0

我是IncrediBuild員工,據我們所知沒有其他客戶對IncrediBuild 7.22發生此問題的抱怨,如果此問題似乎與此相關,請聯繫[email protected],我們將不勝感激特別是IncrediBuild,所以我們可以檢查這個並在這個線程中發佈一個正確的答案。 – Dori

+0

Hi @ Dori,我使用incredibuild 7.22時遇到了同樣的問題,但是僅在更新到Visual Studio 2015 Update 3之後。不確定它是否是incredibuild或msbuild的問題。無論如何,我創建了一張票:http://xoreax.helpserve.com/Default/Tickets/Ticket/View/JJC-327-23799 – Nino

+0

爲了記錄,我也使用vs2015更新3 – kalmiya

1

我修復了.net框架(控制面板 - >程序和功能.. - >修復),因爲我的假設是MSBuild所需的DLL損壞。它現在正在工作,但我不知道這是隨機發生還是一切正常。

2

重新啓動Windows爲我解決它。總是值得嘗試這種奇怪的錯誤。