我在win7下运行Ant 1.8.1。我的Java版本是1.7_17。
我在构建文件中添加了以下两行用于诊断。<echo message="java.version = ${ant.java.version}" />
<echo message="java.home = ${java.home}" />
结果是
[echo] java.version = 1.6
[echo] java.home = C:Program FilesJavajre7
知道是怎么回事吗?
是在Ant 1.8.1中硬编码的,它可以显示的最高java版本是1.6?
我从Ant网站上找到了这个。它实际上是硬编码的
ant.java.version the JVM version Ant detected; currently it can hold
the values "1.2", "1.3",
"1.4", "1.5" and "1.6".
当我把Ant升级到1.9.0后,这个问题就解决了。
[echo] java.version = 1.7
[echo] java.home = C:Program FilesJavajdk1.7.0_17jre
这有点好笑。:)
看起来您已经正确设置了JAVA_HOME,但是您是否在PATH环境变量中包含了%JAVA_HOME%bin ?看起来您当前正在从Java 6安装中获取Java .exe
我认为ant.java.version
显示了构建Ant所用的Java版本。java安装的实际版本存储在java.version
中。