Überschreiben Sie die compiler-Attribut in einem Ant-task javac
Ich versuche zu überschreiben, Ant compiler-Parametern über die Befehlszeile so, dass alle 'javac' - Aufgaben verwenden meine angegebenen compiler.
Das problem, das ich habe laufen in ist, dass jedes Ziel setzt, seinen eigenen Wert für compiler überschreibt die eine, die ich auf der Befehl Linie. So, auch wenn ich den folgenden Befehl eingeben.
ant -Dbuild.compiler=mycompiler
Jedes Ziel, das hat folgenden wird die Nutzung der modernen compiler statt mycompiler, weil der compiler " ="modern" - Attribut
<javac srcdir="."
destdir="${classes.dir}/core"
compiler="modern"
encoding="UTF-8">
<include name="org/**" />
<include name="com/**" />
<compilerarg line="${config.build.compilerarg}" />
</javac>
Gibt es eine Möglichkeit, dies zu ändern, über die Befehlszeile, oder bin ich stecken Bearbeitung der build-Datei?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ant
javac
task-Dokumentation sagt:Klingt es so, als wenn Sie entweder geben Sie die Globale bauen.compiler-Eigenschaft oder eine bestimmte compiler-Attribut.
So, wie es aussieht, müssen Sie Ihr build-Datei und entweder:
entfernen Sie die compiler-Attribut aus dem javac Aufrufe und ermöglichen die
Globale bauen.compiler-Einstellung
Kaskade
ändern Sie die Werte der compiler
Attribut von einem hart-codierten string
compiler="moderne" Eigentum
compiler="${javac.compiler}"