不知道是我最近特別運氣好,還是怎麼一回事,老是遇到奇怪的現象( 我都搞不清楚這應該算 bug 還 feature 了)。
不知道是我最近特別運氣好,還是怎麼一回事,老是遇到奇怪的現象( 我都搞不清楚這應該算 bug 還 feature 了)。
問題重現步驟
1. 使用 Visual Studio 2015 建立一個新的 Universal Windows Application 專案 (命名為 TestApp01,這命名當然隨你開心的)。
2. 直接在 Debug Mode x86 組態下建置,確認沒有問題。
3. 接著, 加入 Windows Desktop Extensions for UWP 與 Windows Mobile Extensions for UWP。
4. 同步驟 2 ,使用 Debug Mode x86 組態重新建置,確認建置沒有問題。
5. 在這個步驟,將建置組態改為 Release Mode x86,然後建置。
6. 奇妙的事情發生了,居然建置失敗!
上圖中有個值得注意的訊息『 ILC ?? ILC1004: ????? 'RdXmlPath' ??? 'C:\Program Files (x86)\MSBuild\Microsoft\.NetNative\LibrryXML' ????』,各位有否注意到那個目錄 LibrryXML ?這個字拼錯了 (別問我為什麼會錯,我也被搞了很久),照著上面的指示打開檔案總管,看看那目錄正確的名稱是 『LibraryXML』。
7. 那要怎麼解決這個問題呢?目前我能想到的應急之計 (workaround) 就是把這目錄複製一份,把名稱改成錯誤訊息上所顯示的名稱。
8. 維持在 Release Mode x86 的組態,重新建置一次,這次就是成功的狀態了。
9. 附註:其實前面的編譯錯誤訊息是我遇到的第三種了,這個狀態似乎是隨機挑個目錄找你麻煩的。前兩次的附圖如下:
這問題實在很煩人 ,現在我也只能想到複製改名這種爛招數暫時解決這個問題,如果有人照著做卻沒有問題的麻煩留言一下,我可能有需要去行天宮問一下關聖帝君了。如果你也有一樣的問題,那只好祈禱微軟的 Scrum 是真的有用,可以在下次發布 Update 時修正這問題。