一、Ant介绍
Ant是Java的生成工具,是Apache的核心项目;直接在apache官网下载即可;
Ant类似于Unix中的Make工具,都是用来编译、生成;
Ant是跨平台的,而Make不能;
Ant的主要目的就是把你想做的事情自动化,不用你手动一步一步做,因为里面内置了javac、java、创建目录、复制文件等功能,所以可以直接点击Ant文件,即可编译生成你的项目;
下载地址: http://ant.apache.org/bindownload.cgi
二、Ant配置
在Ant安装之前需要安装好JDK,并配置好JAVA_HOME;
Ant配置:
1.新建环境变量ANT_HOME:值为ANT的主目录;
2.在path中配置%ANT_HOME%/bin;
配置完成之后,打开命令行,输入ant,当出现:
Buildfile: build.xml does not exist!
Build failed
时说明配置完成;
三、Ant入门
ant的默认生成文件为build.xml;输入ant后,ant会在当前目录下搜索是否有build.xml,如果有,则执行;当然也可以自定义生成文件,通过ant -f a.xml即可指定a.xml为生成文件;
ant的生成文件是xml文件,整体结构为:
- <?xml version="1.0" encoding="GBK"?>
- <project default=" targetname">
- <target name="name">
- </target>
- </project>
<?xml version="1.0" encoding="GBK"?>
<project default=" targetname">
<target name="name">
</target>
</project>
project是生成文件的根元素,表示一个工程;
target是project的子元素,表示一个任务;一个project中可以定义多个target元素,表示多个任务;
default属性表示默认执行的target,如果ant命令没有指定target,则执行default的target;
ant targetname;则会执行此target,而忽略default设置的target;
注意:不能有两个相同的targetname;
代码举例:创建并删除hello目录;
- <?xml version="1.0" encoding="gbk"?>
- <project default="delete">
- <property name="name" value="xiazdong"/>
- <target name="delete" depends="mkdir">
- <delete dir="${name}"/>
- </target>
- <target name="mkdir">
- <mkdir dir="${name}"/>
- </target>
- </project>
<?xml version="1.0" encoding="gbk"?>
<project default="delete">
<property name="name" value="xiazdong"/>
<target name="delete" depends="mkdir">
<delete dir="${name}"/>
</target>
<target name="mkdir">
<mkdir dir="${name}"/>
</target>
</project>
四、Ant的XML元素详解
1.<project>元素
是Ant生成文件的根元素;一般形式如:
<project default=" "[ basedir="." ] [name="projectname"]>
default的值是默认执行的target名;
basedir是指定基准目录,一般都是basedir="."
name是指工程名字;
2.<target>元素
是project元素的子元素,在project元素中能够有多个target;一般形式如下:
<target name=" " [ depends=" A "] [ if =" prop1 "] [ unless=" prop2"]>
</target>
name表示target的名称;
depends中填写其他target名称(可以有多个名称,用逗号分割),表示只有targetA完成之后才能够做此target,如果执行此target,则会先执行A;
if的值表示一个属性名,只有设置了该属性名,才能执行此target;
unless的值表示一个属性名,只有没有设置该属性名,才能执行此target;