当尝试编译的Javadoc Taglet的,这需要$JAVA_HOME/lib/tools.jar
,我发现,蚂蚁(1.8.4版本)设置java.home
到$JAVA_HOME/jre
,而不是仅仅$JAVA_HOME
。我验证了这一点正是如此:
<echo>${java.home}</echo>
<echo>${env.JAVA_HOME}</echo>
[echo] /usr/java/jdk1.7.0_21/jre
[echo] /usr/java/jdk1.7.0_21
据ant -diagnostics
,没有像jdk.home
任何财产。因此,使用tools.jar
我必须做的:
<classpath location="${java.home}/../lib/tools.jar"/>
所以,我有两个问题:
1)是不是有什么毛病我蚂蚁的设置是造成java.home
指向JRE而不是JDK?
2)如果是蚂蚁应该工作,用我的类路径中..
我应该做的事情的方式方法是什么?或者我应该做${env.JAVA_HOME}/lib/tools.jar
?还是其他什么东西?
ant是一个shell脚本。尝试在(+ x)上运行shell调试。确保ant找到的java是真正的java(没有任何软链接) – Jayan
1)我编辑了shell脚本,在最后一行之前放置'echo $ JAVA_HOME',并且在那个地方没有改变。 2)我尝试重命名JDK目录,并在其位置放置符号链接到新名称。 '$ {java.home}'更改为反映重命名的目录,因此它使用正确的目录。 –
对不起,我直到现在才看到! – ingyhere