2012-03-13 186 views
1

我在我的64位Win 7 Box上遇到NAnt出現一些奇怪的錯誤。Windows 7 64位NAnt - 錯誤setWinVer.6.1

針對.NET 2.0應用程序。我有VS 2005和VS 2010安裝。

這個構建文件在Xp 32位上完美工作。

當我運行它,我得到:

C:\Apps\BLAH\nant.exe -buildfile:BC_STUFF.build BuildAndInstall "-D:SkipSandCastle=true"  
NAnt 0.85 (Build 0.85.2478.0; release; 14/10/2006) 
Copyright (C) 2001-2006 Gerry Shaw 
http://nant.sourceforge.net 

Buildfile: file:///C:/Apps/BLAH/BC_STUFF.build 
Target framework: Microsoft .NET Framework 2.0 
Target(s) specified: BuildAndInstall 

    [sysinfo] Setting system information properties under sys.* 
    [sysinfo] Property could not be created for environment variable 'CommonProgramFiles(x86)' : Property name 'sys.env.CommonProgramFiles(x86)' is invalid. 
    [sysinfo] Property could not be created for environment variable 'ProgramFiles(x86)' : Property name 'sys.env.ProgramFiles(x86)' is invalid. 
    [script] Scanning assembly "fdii67ui" for extensions. 
    [script] Scanning assembly "qv6p_-ys" for extensions. 
    [script] Scanning assembly "abosgmew" for extensions. 

winVer: 


BUILD FAILED - 0 non-fatal error(s), 2 warning(s) 

Target 'setWinVer.6.1' does not exist in this project. 

Total time: 0.7 seconds. 

如何糾正這個有什麼想法?


更新

我右點擊NAnt.exe,改變了它在兼容模式(Win XP的SP3)運行和它的作品,但現在它有一個很難從註冊表中讀取 - 這是奇怪的)。不是最好的方法,但它似乎有一些效果,將保持這種更新。

回答

1

發現查看NAnt.exe屬性以與Windows XP SP3兼容的方式運行該程序是唯一不用升級即可完成此操作的方法。

1

看看你的winVer目標在做什麼。它看起來像是根據Windows版本形成目標名稱並調用該目標。在這種情況下,它是setWinVer.6.1,並且該目標在您的項目中不存在。

+0

感謝您的快速回復manojlds。我搜索了我們的每個構建文件,並且我還沒有找到任何winVer。我也在我們的項目目錄中進行了文本搜索,但沒有找到任何winVer。看來這是一個南特的東西。 – 2012-03-13 20:49:59

1

一些一般建議:您正在運行超過五年的NAnt的0.85版本。我不希望這個版本在Win 7 64位等現代環境中沒有任何麻煩。你絕對應該考慮切換到0.91版本,如果已經解決了你的問題,我不會感到有點驚訝。

+0

我們計劃在我們刪除bizTalk 2006之後進行升級,因爲我們需要在此時重新編寫構建腳本。 – 2012-03-14 23:23:40

0

我有同樣的問題。 我設法得到它的工作通過增加在項目生成文件(.nant)線如下

<project name=""> 
<property name="" value="" /> 
<target name="setWinVer.6.1"></target>