一个最简单的例子:
在本地D:/eclipse/workspace下建一个java project结构如下图所示:
build.xml 文件内容:
建完之后,有两种方法执行build文件:
1. 在eclipse下直接右键作为Ant project运行,编译成功。
2. 在命令行,转到build.xml文件目录下,键入ant -buildfile build.xml,编译成功。
下面是一个稍复杂点的例子:
Task: 编译BPIMSJava project并生成一个叫做prclient.jar的jar文件,然后拷贝这个jar到指定的路径。其中要把BPIMSLibraries的jar包导入的classpath中。(请忽略图中的PBC project)
Project structure:
Build.xml 文件内容:
Note:
1. property是用来定义变量的。eg. <property name="base.dir" value="D:/eclipse/workspace/"/>
变量是base.dir,实际值是D:/eclipse/workspace/,在下面调用时写成${base.dir}就可以得到D:/eclipse/workspace/这个值。
2. target的执行顺序是:clean==>compile==>makeJar==>doCopy, 第二行的<project name="MyTask" basedir="." default="doCopy">中的default指明了第一个执行的target。和其他target的关系是通过target标签里的depends属性确定的。eg. <target name="doCopy" depends="makeJar"/> makeJar执行完,doCopy才会执行。
3. 引入classpath时,在pathelement里面有两个属性path和location,他们的区别是path指定的是一个路径,location指定到一个文件。个人比较喜欢用fileset,它可以指定一个文件夹下面的某些特点的文件。
<fileset dir="${BPIMSLib}">
<include name="*.jar"/> <!-- 指定引入的文件是${BPIMSLib}文件夹下所有后缀为jar的文件 -->
</fileset>
Comments:
关于build.xml文件内关键字的用法请查阅Ant API(应该很简单的 :-)):
http://ant.apache.org/manual/index.html
ongoing...