首先,Apache Ant主要是对Java应用进行编译、测试、部署的这么一套工具。
官方下载地址:http://ant.apache.org/
将下载后的zip包解压缩,在系统中配置环境变量ANT_HOME指向其bin目录即可。
打开命令行测试:输入ant命令,出现如下信息说明配置成功!
Buildfile: build.xml does not exist! Build failed
具体命令可参考官方手册,下面主要是讲在eclipse集成开发环境中使用。
eclipse3.7集成了ant,在你的应用中构建build.xml文件。其中, 每一个build.xml构建文件定义一个唯一的项目(project标签),每一个项目下有多个目标(target标签),目标之间可以有依赖关系(target的depends属性),每一个目标中可定义多个任务。
简单配置示例如下:
<?xml version="1.0" encoding="UTF-8"?>
<project name="antTest">
<target name="sayHello">
<echo message="Hello ant!" />
</target>
</project>
<project name="antTest">
<target name="sayHello">
<echo message="Hello ant!" />
</target>
</project>
执行:在build.xml文件上右键单击“Run As”->"Ant Build",Console窗口将打印Hello ant!字样,并输出BUILD SUCCESSFUL说明执行成功。(在命令行窗口中输入ant sayHello进行测试)
部署Java工程的常用的主要任务包括:
1.javac编译
2.java执行
3.jar生成jar文件
示例配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<!--打包jar文件-->
<project name="jar包名" default="release" basedir=".">
<property name="debug" value="on" />
<property name="package.prefix" value="com/xxx" />
<property name="classes.dir" value="${basedir}/bin" />
<property name="servlet.lib" value="${basedir}/lib" />
<property name="jar.name" value="jar包名.jar" />
<!-- Clean the old classes -->
<target name="clean">
<delete>
<fileset dir="${classes.dir}">
</fileset>
</delete>
</target>
<!-- Compiles the source directory -->
<target name="compile.java" depends="clean">
<javac debug="${debug}" encoding="GBK"
destdir="${classes.dir}" includeantruntime="on">
<src path="${basedir}/src目录" />
<classpath id="class.path.dir">
<fileset dir="../web/WEB-INF/lib">
<include name="*.jar" />
<exclude name="${jar.name}" />
</fileset>
<fileset dir="${servlet.lib}">
<include name="**/*.jar" />
</fileset>
</classpath>
</javac>
</target>
<!-- Creates the class package -->
<target name="package" depends="compile.java">
<jar jarfile="../web/WEB-INF/lib/${jar.name}">
<fileset dir="${classes.dir}">
<include name="${package.prefix}/**/*.class" />
</fileset>
</jar>
</target>
<!-- execute result. -->
<target name="release" depends="package">
<echo message="Build success!" />
</target>
</project>
其中,设置了几个属性property,下文中可以通过${}这种方式来引用。
以上配置的结果是在指定lib目录生成jar文件,具体的class文件放入指定的bin目录。