Следуя советам Newtopian, вы можете быстро подтвердить, является ли это поведение проблемой, запустив в терминале
C:\>set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_19
C:\>ant debug
Кроме того, я не уверен, является ли текст, который вы ввели в переменную окружения JAVA_HOME, буквально «C: \ Program Files \ Java \ jdk1.6.0_19», то есть с кавычками, но если это так, вы должны удалить кавычки, как они скинут ant.bat.
Вот соответствующий бит из ant.bat
:checkJava
set _JAVACMD=%JAVACMD%
if "%JAVA_HOME%" == "" goto noJavaHome
if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome
if "%_JAVACMD%" == "" set _JAVACMD=%JAVA_HOME%\bin\java.exe
goto checkJikes
:noJavaHome
if "%_JAVACMD%" == "" set _JAVACMD=java.exe
... omitted ...
"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% %ANT_CMD_LINE_ARGS%
Если это не поможет, не могли бы вы опубликовать свою задачу отладки?
Два варианта сделать его постоянным:
Запустите это:
C:\>REG delete HKCU\Environment /V JAVA_HOME
C:\>REG delete HKLM\Environment /V JAVA_HOME
C:\>REG add HKCU\Environment /V JAVA_HOME /d "C:\Program Files\Java\jdk1.6.0_19"
(в основном, убедитесь, что у вас есть только один набор JAVA_HOME, и это правильно; обязательно закройте и снова откройте терминал после этого)
Если ничего не помогло, решение дрянного пакетного файла:
@echo off
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_19
ant %*
сохраните как ant_wrapper.bat
(или как угодно), и вы сможете сделать ant_wrapper debug
.
(Оба эти решения не проверены)