Mit ant beim compilieren Pfade setzten?

reweiss

Mitglied
Hallo,

ich habe folgendes Problem. Ich habe eine Java-Anwendung die ich mit Ant deploye. In dieser Anwendung habe ich an verschiedenen Stellen Pfadangaben hart reincodiert.

Das ist natürlich etwas doof, wenn man bei Änderungen alle Stellen erst suchen und dann ändern muss.

Also würde ich gerne die Pfadangaben in meiner Ant-build.xml machen, so das diese beim Compilieren verwendet werden. Ist sowas überhaupt möglich? Oder was wären alternativen?

Bin für alles dankbar?

LG
 
Hi,

bin mir nicht ganz sicher, ob es das ist, was Du suchst.
Wenn Du Pfade hartcodiert im Code hast, könntest Du diese in einem Ant Replace Task vor der Compilierung ersetzen.

http://ant.apache.org/manual/CoreTasks/replace.html

Das könnte dann in etwa so aussehen:

Code:
<target name="compile">
    	<replace
    		file="${classes.dir}/test.java"
    		value="@@@"
    		token="whatever"/>
        <javac source="${java.source.version}" target="${java.target.version}" srcdir="${src.dir}" destdir="${classes.dir}" classpath="${classpath}"/>
    </target>


Gruß
joschi
 
Das sieht schonmal ganz gut aus. Aber wenn ich das richtig verstanden habe, überschreibt der replace task ja die gefundene Datei. Also ersetzt das gefundene Pattern mit dem gegebenen value.

Was den nun wenn ich den Pfad wieder ändern will. Er hat ja nun mein pattern schon einmal mit dem Pfad überschieben!

Oder irre ich mich?
 
Zurück