编写build.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- 定义一个工程,默认任务为warFile。 -->
<project name="Portal_V4" default="warFile" basedir=".">
<!-- 定义属性,打成war包的名称。 -->
<property name="warFileName" value="Portal.war" ></property>
<!-- 定义路径,编译java文件时用到的jar包。 -->
<path id="project.lib">
<fileset dir="${basedir}/WebContent/WEB-INF/lib">
<include name="**/*.jar"/>
</fileset>
</path>
<!-- 定义任务,清空任务:清空原有的class文件,创建新的build路径。 -->
<target name="clean">
<delete dir="${basedir}/build" />
<mkdir dir="${basedir}/build" />
</target>
<!-- 定义任务,编译src文件夹中的java文件,编译后的class文件放到创建的文件夹下。 -->
<target name="compile" depends="clean">
<javac srcdir="${basedir}/src" destdir="${basedir}/build" includeantruntime="false">
<classpath refid="project.lib">
</classpath>
</javac>
<!-- 将非jar和非class文件拷贝到war包的对应路径下。 -->
<copy todir="${basedir}/build">
<fileset dir="${basedir}/src">
<include name="**/**.*" />
<exclude name="**/*.jar"/>
<exclude name="**/*.java"/>
<exclude name="**/*.class"/>
</fileset>
</copy>
</target>
<!-- 定义默认任务,将class文件集合成jar包。 -->
<target name="warFile" depends="compile">
<!-- 删除原有war包。 -->
<delete dir="${basedir}/${warFileName}" />
<!-- 建立新war包。 -->
<war destfile="${basedir}/${warFileName}" webxml="${basedir}/WebContent/WEB-INF/web.xml">
<!-- 将非jar和非class文件拷贝到war包的对应路径下。 -->
<fileset dir="${basedir}/WebContent">
<include name="**/**.*" />
<exclude name="**/*.jar"/>
<exclude name="**/*.class"/>
</fileset>
<!-- 将jar和class文件拷贝到war包的对应路径下。 -->
<lib dir="${basedir}/WebContent/WEB-INF/lib" />
<classes dir="${basedir}/build" />
</war>
</target>
</project>
执行ant脚本,切换到build.xml所在目录下,执行命令ant即可,若ant脚本的名字不是build.xml,则执行命令ant -f **.xml