学ant(1)——property

最近接手一个比较复杂的项目,是由30多个工程组成的。以前一个项目只有1个工程,或者很少的几个工程,依赖IDE就可以完成项目的发布。这次就不可能了,决定趁这个机会,好好地学一下ant

先介绍一下property

1、property类似于变量,可以提供给build.xml中的其他元素使用

<property>元素可以跟很多种属性,比较常用的有:
<property name="name">,相当于map中的key,该属性一般是必须的
<property value="value">,相当于map中的value
<property location="location">,比较类似于value,但是当声明路径的时候,用location比用value好,因为可以自动将相对路径转换成绝对路径,也可以实现splitter跨平台
<property file="file">,引入外部的property文件,当build.xml太大需要拆分的时候,会用到这个属性

2、一旦声明了property之后,在build.xml文件的其他地方就可以用了,比如说
<property name="build.classes.dir" location="build/classes" />

在其他地方,就可以用${}来引用这个property
<mkdir dir="${build.classes.dir}" />

将公共的变量提取出来做成property,基本是必须的,所以用得很多

3、property是不可变的

4、只有在声明了property之后,才能引用它,否则的话就会视为普通的字符串,比如
<mkdir dir="${build.classes.dir}" />

如果这个时候还没有声明build.classes.dir,那么就会视为${build.classes.dir}

你可能感兴趣的:(ant,property)