Ich versuche, eine Versionsnummer in einer Datei build.xml mithilfe eines ANT-Skripts zu ersetzen.Ersetzen der Eigenschaft in einer XML-Datei mithilfe von ANT
Ich habe verschiedene Ansätze versucht, StackOverflow für Antworten gesucht und erneut durchsucht, konnte aber nicht die genaue Abfrage erhalten.
so hier ist meine XML-Datei:
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<project name="feature" default="main" basedir=".">
<target name="init">
<property name="Version" value="1.0.0.20120327"/>
</target>
<target name="main" depends="init">
<description>Main target</description>
</target>
</project>
Jetzt, da u die Version gestrige Datum sehen hat. Ich muss es durch das aktuelle Datum ersetzen.
Hier ist, was ich habe versucht:
<target name="replace">
<tstamp >
<format property="touch.time" pattern="yyyyMMdd"/>
</tstamp>
<property name="Feature.dir" location="../feature" />
<!--Didnt Work-->
<copy file="${Feature.dir}\build.xml" tofile="${Feature.dir}\build1.xml"
filtering="yes" overwrite="yes">
<filterset>
<filter token="Version" value="1.0.0.${touch.time}"/>
</filterset>
</copy>
<!--Didnt work
<replacetoken><![CDATA[<property name="Version" value=""/>]]>
</replacetoken>
<replacevalue><![CDATA[<property name="Version"value="1.0.0.${touchtime}" />]]>
</replacevalue>
-->
<!-- Didnt work
<copy file="${Feature.dir}/build.xml" tofile="${Feature.dir}/build1.xml" >
<filterchain>
<tokenfilter>
<replaceregex pattern="^[ \t]*Version[ \t]*=.*$"
replace="Version=1.0.0.${touch.time}"/>
</tokenfilter>
</filterchain>
</copy>
-->
</target>
Arbeited Danke. Aber nur eine Frage. Was, wenn ich diese Änderung an derselben Datei vornehmen möchte? Ich habe versucht: nur knapp sein Ziel Arbeit –
sloggers1894
Keine Sorgen. Siehe meine bearbeitete Antwort. – Synesso