Ant屬性文件

直接在構建文件中設置屬性是好的,如果你使用的是少數屬性。然而,對於一個大型項目,是要存儲在一個單獨的屬性文件中。

存儲在一個單獨的文件中的屬性可以讓你重複使用相同的編譯文件,針對不同的執行環境不同的屬性設置。例如,生成屬性文件可以單獨維持DEV,TEST和PROD環境。

指定在一個單獨的文件屬性是有用的,當你不知道一個屬性(在一個特定的環境中)前面的值。這使您可以在屬性值是已知的其他環境進行構建。

沒有硬性規定,但一般屬性文件名爲build.properties文件,並放在沿一側的build.xml文件。如build.properties.dev和build.properties.test - 你可以根據部署環境中創建多個生成屬性文件

構建屬性文件的內容類似於普通的Java屬性文件。他們每行包含一個屬性。每個屬性由一個名稱和一個值對來表示。名稱和值對由等號分開。強烈建議屬性標註了正確的註釋。註釋列出所使用的哈希字符。

下面顯示了一個build.xml文件和相關build.properties文件

build.xml

<project name="Hello World Project" default="info"> <property file="build.properties"/> <target name="info"> Apache Ant version is ${ant.version} - You are
at ${sitename}

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。