首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么ANT告诉我JAVA_HOME是错的,而事实并非如此?

为什么ANT告诉我JAVA_HOME是错的,而事实并非如此?
EN

Stack Overflow用户
提问于 2009-10-13 07:55:57
回答 18查看 143.5K关注 0票数 61

我得到了错误:

C:\dev\ws\springapp\build.xml:81:找不到com.sun.tools.javac.Main编译器;javac不在类路径上。也许JAVA_HOME并没有指向JDK。它当前设置为"C:\Program Files\Java\jre6“

但是我已经明确地将我的程序设置为C:\ JAVA_HOME Files\Java\jdk1.6.0_14

ANT是从哪里获得这个值的?

EN

回答 18

Stack Overflow用户

回答已采纳

发布于 2009-10-13 07:59:59

当你说你已经“清楚地设置”JAVA_HOME为"C:\Program Files\Java\jdk1.6.0_14“时-这是你从命令行运行"set”时看到的吗?我相信如果根本没有设置一个值,Ant会猜测JAVA_HOME的值……有没有可能你设置的是JAVAHOME而不是JAVA_HOME?

如果不是这样,我建议您编辑ant.bat批处理文件(不管它叫什么--我记不清它是不是很复杂了),以便在开始时和其他有趣的地方打印出JAVA_HOME。

票数 34
EN

Stack Overflow用户

发布于 2012-06-01 08:00:20

当我尝试使用以下命令运行Ant build时,我遇到了同样的问题:

代码语言:javascript
复制
java -cp ant.jar:ant-launcher.jar org.apache.tools.ant.Main

该命令的输出为:

代码语言:javascript
复制
BUILD FAILED
XXX/build.xml:8: Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK.
It is currently set to "/usr/lib/jvm/java-6-openjdk/jre"

看起来java可执行文件选择"/usr/lib/jvm/java-6-openjdk/jre“作为JAVA_HOME,而不是选择安装JDK的"/usr/lib/jvm/java-6-openjdk”。

我通过在<javac>任务中设置fork="yes"解决了这个问题。

看一下:http://ant.apache.org/manual/Tasks/javac.html

票数 19
EN

Stack Overflow用户

发布于 2011-04-06 05:00:49

也有可能是你的JAVA_HOME设置中包含了/bin,而Ant正在将/bin添加到其中--从而找不到任何可执行文件。我就遇到过这种情况:}

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1558780

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档