簡體   English   中英

將Echo Ant屬性復制到文件

[英]Echo Ant property to a File

我在將屬性回顯到文件時遇到問題。 我很確定我現在無法發現某些拼寫錯誤,或者我缺少一些概念。 目標是:

<target name="war" depends="build">
    <propertyfile file="project-version.properties">
        <entry key="build.version" type="int" operation="+" value="1"/>
    </propertyfile>
    <echo file="WebContent/version.txt">${major.version}.${minor.version}.${build.version}</echo>
    <war destfile="dist/system.war" webxml="WebContent/WEB-INF/web.xml">
        <fileset dir="WebContent"/>
        <classes dir="target/classes"/>
    </war>
</target>

它會從文件project-version.properties中正確更新密鑰build.version:

#Tue Mar 29 19:14:18 BRT 2011
build.number=3
major.version=1
build.version=16
minor.version=0

但是輸出的version.txt是:

${major.version}.${minor.version}.${build.version}

propertyfile任務不會將屬性加載到腳本中,這就是為什么當您嘗試輸出它們時,ant無法將它們擴展為任何值的原因。

為了解決這個問題,您可以在更新后加載project-version.properties文件。

<target name="war" depends="build">
   <propertyfile file="project-version.properties">
       <entry key="build.version" type="int" operation="+" value="1"/>
   </propertyfile>
   <property file="project-version.properties" />
   <echo file="WebContent/version.txt">${major.version}.${minor.version}.${build.version}</echo>
   <war destfile="dist/system.war" webxml="WebContent/WEB-INF/web.xml">
       <fileset dir="WebContent"/>
       <classes dir="target/classes"/>
   </war>
</target>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM