Ant - 屬性檔案



如果只處理少量屬性,直接在構建檔案中設定屬性是可以的。但是,對於大型專案,將屬性儲存在單獨的屬性檔案中更合理。

優勢

將屬性儲存在單獨的檔案中具有以下優勢:

  • 它允許您重用相同的構建檔案,併為不同的執行環境使用不同的屬性設定。例如,可以為開發、測試和生產環境分別維護構建屬性檔案。

  • 當您事先不知道某個環境中屬性的值時,它很有用。這允許您在知道屬性值的其它環境中執行構建。

沒有硬性規定,但屬性檔案通常命名為**build.properties**,並與**build.xml**檔案放在一起。您可以根據部署環境建立多個構建屬性檔案,例如**build.properties.dev**和**build.properties.test**。

構建屬性檔案的內容類似於普通的Java屬性檔案。它們每行包含一個屬性。每個屬性由名稱和值對錶示。

名稱和值對由等號 (=) 分隔。強烈建議對屬性新增適當的註釋。註釋使用井號 (#) 字元列出。

以下示例顯示了一個**build.xml**檔案及其關聯的**build.properties**檔案:

build.xml

下面是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

下面是一個build.properties檔案的示例:

# The Site Name
sitename=www.tutorialspoint.com
buildversion=3.3.2

在上面的示例中,**sitename**是一個自定義屬性,它對映到網站名稱。您可以按照這種方式宣告任意數量的自定義屬性。

上面示例中列出的另一個自定義屬性是**buildversion**,在本例中,它指的是構建的版本。

除此之外,Ant還帶有一些預定義的構建屬性,這些屬性在上一節中列出,但為了方便參考,這裡再次列出。

序號 屬性和說明
1

ant.file

構建檔案的完整位置。

2

ant.version

Apache Ant安裝的版本。

3

basedir

構建的basedir,如專案元素的basedir屬性中指定。

4

ant.java.version

Ant使用的JDK版本。

5

ant.project.name

專案名稱,如專案元素的name屬性中指定。

6

ant.project.default-target

當前專案的預設目標。

7

ant.project.invoked-targets

在當前專案中呼叫的目標的逗號分隔列表。

8

ant.core.lib

Ant jar檔案的完整位置。

9

ant.home

Ant安裝的主目錄。

10

ant.library.dir

Ant庫檔案的目錄 - 通常是ANT_HOME/lib資料夾。

本章中提供的示例使用了**ant.version**內建屬性。

廣告