如何将Ant编译器更改为JDK 1.6


问题内容

我需要编译我的源代码以与jre
1.6兼容。但是,当我尝试将javac任务的编译器属性设置为javac1.6时,ant仍将使用javac1.7编译我的代码。我也尝试将编译器版本设置为“现代”,但没有帮助。

<target name="compile-tests">
    <javac compiler="javac1.6" includeantruntime="false" srcdir="${test.dir}"
     destdir="${build.dir}" >
        <classpath refid="class.path" />
    </javac>
</target>

我的JAVA_HOME设置为JDK 1.6:

echo $JAVA_HOME </code> gives: <code>
/usr/lib/jvm/java-6-openjdk-amd64/

我的ant版本是:Apache Ant(TM)版本1.8.2

根据这篇文章,ant使用自己的编译器。如何覆盖ant默认值?另外,根据本文和ant文档,我可以设置全局build.compiler属性。我应该将该属性设置为什么,该怎么做?


问题答案:

我认为Ant compiler属性只是要知道编译器支持哪些属性。在javac一般属性或选项传递到编译器target

您甚至不需要安装Java 6编译器。