我在Ubuntu 12.04 64位上蚀了indigo(3.7.2),我尝试使用java 1.7编译项目。我认为我已经正确安装了java 1.7,因为我可以运行processing 2.0(使用java 1.7)并获得正确的版本消息:
prokop@prokop-Precision-T1500:~$ java -version
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
然而,当击中" play"在日食中的Ant我得到以下消息:
Unsupported major.minor version 51.0
也在" Console"的标题标题中ant构建输出的窗口是:
[Ant Build] /usr/lib/jvm/java-6-openjdk/bin/java
我试图修改eclipse的环境设置:
/home/prokop/SW/jdk1.7.0_60
但它没有帮助 - 蚂蚁显然仍在使用java-6-openjdk
答案 0 :(得分:2)
Ant使用JAVA_HOME
。在shell中尝试echo $ JAVA_HOME以查看它指向的位置并将其指向jdk 7.
以下手册中的第4点:
http://ant.apache.org/manual/install.html
可以在这里找到很好的解释: https://unix.stackexchange.com/questions/123412/what-is-the-difference-between-java-home-and-update-alternatives
答案 1 :(得分:2)
当您通过eclipse运行ant时会发生这种情况。您可以使用Eclipse中的外部工具配置来设置JDK。查看附件。
答案 2 :(得分:0)
在javac
任务中,尝试通过设置可执行属性来指定Java编译器,如下所示:
<property name="JDK1.7.dir" location="/usr/lib/jvm/java-7" />
<property name="javac1.7" location="${JDK1.7.dir}/bin/javac" />
<target name="compile-tests">
<javac executable="${javac1.7}"
fork="yes"
includeantruntime="false"
srcdir="${test.dir}"
destdir="${build.dir}" >
<classpath refid="class.path" />
</javac>
</target>
答案 3 :(得分:0)
另一种设置方法是在build.xml中使用:
<project name="xyz" default="all">
<property name="ant.build.javac.target" value="1.7" />
...
此全局参数( ant.build.javac.target )指定要与JDK 7兼容的项目目标。