Ant Build无法识别JAVA_HOME

时间:2012-09-27 11:35:42

标签: java ant build

使用ANT进行构建时出现以下错误:

rem bug ID 32069: resetting an undefined env variable changes the errorlevel.
if not "C:\Program Files (x86)\Java\jdk1.6.0_30\bin\java.exe" == "" set _JAVACMD=
if not "" == "" set ANT_CMD_LINE_ARGS=

我知道ANT无法指向JDK。我通过.bat文件启动ANT构建,并在那里指定

set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_30
set ANT_HOME=C:\Softwares\apache-ant-1.8.4

如果为JAVA_HOME值添加双引号,我会收到以下错误:

if exist "C:\Softwares\apache-ant-1.8.4\lib\ant.jar" goto checkJava

set _JAVACMD=
Files was unexpected at this time.
if ""C:\Program Files (x86)\Java\jdk1.6.0_30"" == "" goto noJavaHome

令人困惑的部分是,如果我将ANT_HOME更改为以前的版本(1.6),它可以正常工作。

set ANT_HOME=C:\Softwares\Ant

1 个答案:

答案 0 :(得分:1)

这似乎与64位Windows上的32位JDK有关,但我不确定。

对我有用的是使用显然仍然有效的旧技巧。所以在你的情况下应该是:

set JAVA_HOME=C:\Progra~2\Java\jdk1.6.0_30
set PATH=C:\Progra~2\Java\jdk1.6.0_30\bin;%PATH%

请注意,我的机器上的progra~2映射到x86程序文件目录。可能与你的不同,所以你需要检查一下。