运行 ant 时,我收到以下消息:
无法找到 tools.jar。预计在 C:\Program Files\Java\jre6\lib\tools.jar 中找到它
我将 JAVA_HOME 设置为 C:\Program Files\Java\jdk1.7.0_02
,路径包括 C:\Program Files (x86)\Java\jdk1.7.0_02\bin
,CLASSPATH包含C:\Program Files (x86)\Java\jdk1.7.0_02
,ANT_HOME设置为C:\ant
。
似乎 ant 忽略了所有这些设置并在其他地方寻找 tools.jar。没有指向 jre6 路径的环境变量。任何想法为什么?
最佳答案
有两个目录看起来像 JDK。
C:\Program Files\Java\jdk1.7.0_02
C:\Program Files (x86)\Java\jdk1.7.0_02\
这可能是由于同时安装了 64 位和 32 位 JDK 造成的?无论如何,ant.bat 看到的 java.exe
应该来自 JDK。如果 JRE 的 java.exe
在路径中首先出现,则将用于猜测 JDK 位置。
将 'C:\Program Files (x86)\Java\jdk1.7.0_02\bin' 或 'C:\Program Files\Java\jdk1.7.0_02' 作为路径中的第一个参数。
进一步的步骤:
您可以获取 ant -diagnostics
的输出并寻找有趣的键。 (假设 Sun/Oracle JDK)。
java.class.path
java.library.path
sun.boot.library.path
(在我的例子中,tools.jar 出现在 java.class.path 中)
关于java - "Unable to locate tools.jar"运行 Ant 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9119479/