我需要编译我的源代码以与 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
/usr/lib/jvm/java-6-openjdk-amd64/
我的蚂蚁版本是: Apache Ant(TM) version 1.8.2
根据 这篇文章,Ant 使用自己的编译器。我如何覆盖 Ant 默认值?
此外,根据 这篇文章 和 Ant 文档,我可以设置全局 build.compiler
属性。我应该将该属性设置为什么,我该怎么做?
原文由 user847352 发布,翻译遵循 CC BY-SA 4.0 许可协议
我认为 Ant
compiler
属性只是为了知道编译器支持哪些属性。在javac
通常传递给编译器的属性或选项是target
。您甚至不需要安装 Java 6 编译器。