需求:使用ant脚本在控制台输出一句话
<?xml version="1.0" encoding="utf-8"?> <project name="antPro" basedir="D:projectDiaryTest" default="getBaseDir"> <target name="getBaseDir"> <echo message="The base dir is :${basedir}"/> </target> </project>
运行效果:
元素介绍:
1.project元素
project元素是Ant构件文件的根元素,Ant构件文件至少包含一个project元素,否则会发生错误,在project元素下,可以包含多个target元素
name属性
用于指定project元素的名称,名称要唯一
default属性
用于指定project默认执行时所执行的target的名称
basedir属性
用于指定基路径的位置
2.target元素
target为Ant的基本执行单元,它可以包含一个或多个具体的任务,多个target可以存在相互依赖
name属性
指定target元素的名称,这个属性在一个project元素中是唯一的
depends属性
用于描述target之间的依赖关系,若与多个target存在依赖关系时,需要以","间隔,Ant会依照depends属性中target出现的顺序依次执行每个target, 被依赖的target会先执行
if 属性
用于验证指定的属性是否存在,若不存在,所在的target将不会被执行
unless属性
该属性的功能与if属性的功能正好相反,也用来验证指定的属性是否存在,若不存在target将会被执行
description属性
该属性是target功能的简短描述说明
例子如下:
<?xml version="1.0" encoding="utf-8"?> <project name="targetPro" default="targetB"> <target name="tagetA" if = "ant.java.version"> <echo message="Java Version:${ant.java.version}"/> </target> <target name="targetB" depends="tagetA" unless="philanderdd"> <description> a depend example! </description> <echo message="The base dir is :${basedir}"/> </target> </project>
运行结果:
被依赖的target先执行了
property 属性
<?xml version="1.0" encoding="utf-8"?> <project name="propertyPro" default="example"> <property name="name" value="zhangsan"/> <property name="age" value="23"/> <target name="example"> <echo message="name:${name},age:${age}"/> </target> </project>
效果: