Ant屬性文件
直接在構建文件中設置屬性是好的,如果你使用的是少數屬性。然而,對於一個大型項目,是要存儲在一個單獨的屬性文件中。
存儲在一個單獨的文件中的屬性可以讓你重複使用相同的編譯文件,針對不同的執行環境不同的屬性設置。例如,生成屬性文件可以單獨維持DEV,TEST和PROD環境。
指定在一個單獨的文件屬性是有用的,當你不知道一個屬性(在一個特定的環境中)前麵的值。這使您可以在屬性值是已知的其他環境進行構建。
冇有硬性規定,但一般屬性文件名為build.properties文件,並放在沿一側的build.xml文件。如build.properties.dev和build.properties.test - 你可以根據部署環境中創建多個生成屬性文件
構建屬性文件的內容類似於普通的Java屬性文件。他們每行包含一個屬性。每個屬性由一個名稱和一個值對來表示。名稱和值對由等號分開。強烈建議屬性標注了正確的注釋。注釋列出所使用的哈希字符。
下麵顯示了一個build.xml文件和相關build.properties文件
build.xml
<?xml version="1.0"?> <project name="Hello World Project" default="info"> <property file="build.properties"/> <target name="info"> <echo>Apache Ant version is ${ant.version} - You are at ${sitename} </echo> </target> </project>
build.properties
# The Site Name sitename=www.yiibai.com buildversion=3.3.2
在上麵的例子中,站點名是被映射到該站點的名稱自定義屬性,可以聲明任意數目以這種方式自定義屬性。在上麵的例子中所列的另一個自定義屬性是buildversion,其中,在這種情況下指的是創建的版本。
除上述者外,Ant附帶了一些預定義的構建屬性,它已被列入上一節中,但下麵是代表一次。
屬性 | 描述 |
---|---|
ant.file | The full location of the build file |
ant.version | The version of the Apache Ant installation |
basedir | The basedir of the build, as specified in the basedir attribute of theproject element. |
ant.java.version | The version of the JDK that is used by Ant. |
ant.project.name | The name of the project, as specified in the name atrribute of theproject element. |
ant.project.default-target | The default target of the current project |
ant.project.invoked-targets | Comma separated list of the targets that were invoked in the current project |
ant.core.lib | The full location of the ant jar file |
ant.home | The home directory of Ant installation |
ant.library.dir | The home directory for Ant library files - typically ANT_HOME/lib folder. |
在本節的例子中,我們使用內置的屬性ant.version。