Ant 使用的是 JRE 而不是 JDK,尽管设置了环境变量
Posted
技术标签:
【中文标题】Ant 使用的是 JRE 而不是 JDK,尽管设置了环境变量【英文标题】:Ant is using the JRE instead of JDK, although the environment variables are set 【发布时间】:2011-05-26 01:17:27 【问题描述】:我使用的是 Windows 7 x64,并且正在尝试安装 Apache Ant。我总是收到以下错误消息:
C:\Users\xxx>ant 无法定位 工具.jar。预计会在 C:\Program Files\Java\jre6\li b\tools.jar Buildfile: build.xml 确实 不存在!构建失败
在各种论坛中,他们说环境变量设置不正确。我在我的系统上将它们设置为:
ANT_HOME: C:\Ant
类路径:C:\Program Files\Java\jdk1.6.0_21\bin
JAVA_HOME: C:\Program Files\Java\jdk1.6.0_21\bin
路径:(...很多东西...);C:\Program Files\Java\jdk1.6.0_21\bin;C:\ant\bin;%JAVA_HOME%\bin;
但我仍然收到错误消息。你知道如何强制 ant 使用正确的目录吗? Java(JRE 和 JDK)出现在 Program Files 和 Program Files (x86) 中。并且似乎在尝试使用 64x JRE。
【问题讨论】:
【参考方案1】:JAVA_HOME 应该是 C:\Program Files\Java\jdk1.6.0_21\(删除“bin”)并且 tools.jar 将在 lib,而不是 bin。
【讨论】:
【参考方案2】:检查“许多东西”路径 - 其中一个可能包含 java 可执行文件。
【讨论】:
【参考方案3】:在(...很多事情...)区域中,您有通往 JRE 的路径吗?尝试删除它。此外,您可以尝试设置完整路径,而不是在路径中使用 %JAVA_HOME% (认为它应该可以工作,我之前遇到过问题)。
最后对于 JAVA_HOME,删除 \bin
【讨论】:
【参考方案4】:我知道这是一篇旧帖子,但这里有此帖子的链接:
http://ant.apache.org/manual/
它声称不设置类路径,因为 Ant 可能会打破混乱。如果发生这种情况,则应添加以下内容以忽略它:
<property environment="env."/>
<property name="env.CLASSPATH" value=""/>
<fail message="Unset $CLASSPATH / %CLASSPATH% before running Ant!">
<condition>
<not>
<equals arg1="$env.CLASSPATH" arg2=""/>
</not>
</condition>
</fail>
希望这能有所帮助,以防有人像我一样偶然发现这个问题。
【讨论】:
【参考方案5】:我知道这是一篇旧帖子,但 followind 为我做了诀窍 在 JAVA_HOME 中替换 "Program Files" -> "Progra~1"
【讨论】:
以上是关于Ant 使用的是 JRE 而不是 JDK,尽管设置了环境变量的主要内容,如果未能解决你的问题,请参考以下文章
Ant + Vista 64:“无法找到 tools.jar”(jre/jdk 冲突?)
tomcat, jdk, eclipse, ant的安装,设置及常见问题
如何获取最新的 JRE / JDK 作为 zip 文件而不是 EXE 或 MSI 安装程序? [关闭]