每次 Build 專案都顯示以下的錯誤訊息:
=============================================================
Executing command: hudson.util.ArgumentListBuilder@fdf48d [NWS] $ cmd.exe /C '"D:\hudson\NAnt\bin\NAnt.exe "-buildfile:build config\NWS.build" clean && exit %%ERRORLEVEL%%"' NAnt 0.86 (Build 0.86.2898.0; beta1; 2007/12/8) Copyright (C) 2001-2007 Gerry Shaw http://nant.sourceforge.net BUILD FAILED Failed to initialize the 'Microsoft .NET Framework 2.0' (net-2.0) target framework. Property evaluation failed. Expression: ${path::combine(sdkInstallRoot, 'bin')} ^^^^^^^^^^^^^^ Property 'sdkInstallRoot' has not been set. For more information regarding the cause of the build failure, run the build again in debug mode. Try 'nant -help' for more information Finished: FAILURE=============================================================
看起來像是我重灌作業系統後,NET Framework 2.0 沒有安裝好似的。但之後不管我重裝 SDK 甚至安裝了 VisualStudio,都解決不了這個錯誤。這個問題困擾了我將近一個月,甚麼都沒改的情況下,原本在 XP 可以動的東西到了 2003 就是不能用。
就在我今天即將打算要透過自行修改 Registry 寫入 SDK Path 之前,沒想到讓我找到線索,原來這本來就是 NANT 0.86 beta 在 Win2003 上的一個 Regression bug !透過 SF 的 Track 知道原本在 0.85 是不會有這個錯誤,我依照建議升級 Nant 到 0.91 nightly build 版本後問題就迎刃而解。
鑒於網路上對這個臭蟲的中文資訊幾乎付之闕如,我就來當開路先鋒好了,貼這篇文章讓偏好閱讀中文資訊,但跟我一樣從 XP 升級作業系統到 2003 或是在 2003 上升級 Nant 0.85 -> 0.86 而踩到這個地雷的朋友可以有機會透過這篇文章找到答案。
沒有留言:
張貼留言