我正在尝试通过命令行覆盖Ant编译器属性,以便所有的“javac”任务都使用我指定的编译器。
遇到的问题是,任何设置自己的编译器值的目标都会覆盖我在命令行设置的值。因此,即使我输入以下命令:
ant -Dbuild.compiler=mycompiler
任何具有以下特点的目标都将使用现代编译器而非我的编译器,因为该目标带有 compiler="modern" 属性。
<javac srcdir="."
destdir="${classes.dir}/core"
compiler="modern"
encoding="UTF-8">
<include name="org/**" />
<include name="com/**" />
<compilerarg line="${config.build.compilerarg}" />
</javac>
有没有办法通过命令行覆盖这个设置,还是我只能编辑构建文件?