Property 文件
如果您正在使用一些属性,则直接在构建文件中设置属性是可以的。 但是,对于大型项目,将属性存储在单独的属性文件中是有意义的。
将属性存储在单独的文件中可提供以下好处 -
它允许您重用相同的构建文件,并为不同的执行环境使用不同的属性设置。 例如,可以为DEV,TEST和PROD环境单独维护构建属性文件。
当您事先不知道属性(在特定环境中)的值时,它很有用。 这允许您在已知属性值的其他环境中执行构建。
没有硬性规则,但通常属性文件名为build.properties并且与build.xml文件并排放置。 您可以基于部署环境创建多个构建属性文件 - 例如build.properties.dev和build.properties.test.
build属性文件的内容类似于普通的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.iowiki.com
buildversion = 3.3.2
在上面的示例中, sitename是一个自定义属性,映射到网站名称。 您可以以这种方式声明任意数量的自定义属性。 上面示例中列出的另一个自定义属性是buildversion ,在本例中,它指的是构建版本。
除了上述内容之外,Ant还提供了许多预定义的构建属性,这些属性在上一节中列出,但在下面再次表示。
Sr.No. | 属性和描述 |
---|---|
1 | ant.file 构建文件的完整位置。 |
2 | ant.version Apache Ant安装的版本。 |
3 | basedir 构建的基础,在project元素的basedir属性中指定。 |
4 | ant.java.version Ant使用的JDK版本。 |
5 | ant.project.name 项目name ,在project元素的name atrribute中指定。 |
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内置属性。