Sto*_*dow 0 java ant java-home
我在Windows XP机器上安装ant,并遵循Apache手册网站上的说明.它说要设置JAVA_HOME,所以我查了一下,看到没有名为JAVA_HOME的环境变量,一个,并将其设置为"C:\ Program Files\Java\jdk1.6.0_19"
但是,当我尝试运行ant debug时,它告诉我JAVA_HOME当前设置为"C:\ Program Files\Java\jre6"
我猜JAVA_HOME不是环境变量.但如果它不是一个,我不知道从哪里开始寻找它.有人知道吗?
编辑:哦是的 - 这也是我对tools.jar的烦恼,但我猜测当我修复JAVA_HOME问题时,这将有助于终端找到tools.jar.或者也许我错了.谢谢
根据Newtopian的建议,您可以通过在终端中运行来快速确认该行为是否存在问题
C:\>set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_19
C:\>ant debug
Run Code Online (Sandbox Code Playgroud)
另外,我不确定您输入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%
Run Code Online (Sandbox Code Playgroud)
如果这没有帮助,你可以发布你的调试任务吗?
使其成为永久性的两种选择:
运行这个:
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"Run Code Online (Sandbox Code Playgroud)(基本上,确保你只设置了一个JAVA_HOME并且它是正确的;确保在执行此操作后关闭并重新打开终端)
如果一切都失败了,那就是糟糕的批处理文件解决方案
@echo off
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_19
ant %*Run Code Online (Sandbox Code Playgroud)保存为ant_wrapper.bat(或其他),你应该能够做到ant_wrapper debug.
(这两种解决方案都未经测试)
| 归档时间: |
|
| 查看次数: |
2457 次 |
| 最近记录: |