ANT打包J2EE项目war包

1.下载并安装ant

2.安装ant步骤如下

.解压下载的zip包
.进入解压的目录,把bin目录放入系统变量PATH中.
eg:E:\dev_tools\apache-ant-1.9.\bin
.打开cmd,输入ant,可以看到BuildFIle: build.xml does not exist!即可

3.写build.xml即可

<project basedir="E:\SVN\babyshow\server" default="antwar" name="anttest">
<target name="init" description="设置初始化打 war 包需要的路径变量">
<property name="name" value="anttest"/>
<property name="src" value="${basedir}/xxxx/src"/>
<property name="lib" value="${basedir}/xxxx/WebContent/WEB-INF/lib"/>
<property name="webapp" value="${basedir}/xxxx/WebContent"/> <property name="build.src" value="${basedir}/AntBuild/xxxx/src"/>
<property name="build.dest" value="${basedir}/AntBuild/xxxx/WEB-INF/classes"/>
<property name="buildwar.dest" value="${basedir}/AntBuild/xxxx"/>
<property name="jar.dest" value="${basedir}/AntBuild/jar"/>
<property name="war.dest" value="${basedir}/AntBuild/war"/>
<!-- 打包后war包的名字 -->
<property name="war.dir" value="${war.dest}/xxxx.war"/>
<path id="classpath">
<fileset dir="${lib}">
<include name="*.jar"/>
</fileset>
</path>
</target> <target name="prepare" depends="init" description="创建打包需要的路径,拷贝源文件到打包路径下">
<mkdir dir="${build.src}"/>
<mkdir dir="${build.dest}"/>
<mkdir dir="${buildwar.dest}"/>
<mkdir dir="${jar.dest}"/>
<mkdir dir="${war.dest}"/>
<copy todir="${build.src}">
<fileset dir="${src}"/>
</copy> <copy todir="${buildwar.dest}">
<fileset dir="${webapp}">
<exclude name="${webapp}/WEB-INF/lib/*.jar"/>
</fileset> </copy>
</target>
<target name="build" depends="prepare" description="编译java文件,拷贝properties属性配置文件到编译后的路径下">
<javac srcdir="${build.src}" destdir="${build.dest}" encoding="UTF-8">
<classpath refid="classpath"/>
</javac>
<copy todir="${build.dest}">
<fileset dir="${build.src}">
<include name="product.properties"/>
</fileset>
</copy>
</target> <target name="antwar" depends="clean,build" description="打war包,不将java文件打入包内">
<delete dir="${build.src}"/>
<delete dir="${buildwar.dest}/WEB-INF/lib"/>
<war warfile="${war.dir}" webxml="${buildwar.dest}/WEB-INF/web.xml">
<fileset dir="${buildwar.dest}">
<exclude name="${buildwar.dest}/WEB-INF/lib/**"/>
</fileset>
</war>
</target> <target name="clean" depends="init" description="清除打包用临时文件">
<delete dir="${build.src}"/>
<delete>
<fileset dir="${build.dest}" includes="**/*.classes"/>
</delete>
<delete dir="${buildwar.dest}"/>
</target>
</project>

4.通过命令行进入到build.xml所以目录,执行 ant 即可打包,执行ant clean会删除之前生成的目录

上一篇:HDU 4916 Count on the path


下一篇:Scala集合(一)