<?xml version="1.0" encoding="UTF-8"?>
<project name="你的war包名字" default="generwar" basedir=".">
<property name="src.dir" value="${basedir}/src" />
<property name="webRoot" value="${basedir}/defaultRoot"/>
<property name="build.lib" value="${webRoot}/WEB-INF/lib"/>
<property name="build.dir" value="${basedir}/target" />
<property name="build.classes" value="${build.dir}/classes"/>
<property name="resources" value="${basedir}/config"/>
<property name="webserver" value="war包部署目录"/>
<!--定义CLASSPACH,编译时用到你外部加入的包-->
<path id="classpath">
<pathelement location="${src.dir}" />
<fileset dir="${build.lib}" includes="***.jar" />
</path>
<!--1、删除编译target目录-->
<target name="clean" description="delete directory">
<echo message="clean target directory"/>
<delete dir="${build.dir}" />
</target>
<!--2、创建编译target目录-->
<target name="init" description="create target directory" depends="clean">
<echo message="create target directory"/>
<mkdir dir="${build.dir}" />
<mkdir dir="${build.classes}" />
</target>
<!--3、编译java源文件-->
<target name="compile" description="compile source files" depends="init">
<echo message="compile source files"/>
<javac srcdir="${src.dir}" destdir="${build.classes}">
<classpath refid="classpath" />
<compilerarg line="-encoding GBK "/>
</javac>
</target>
<!--4、 复制资源文件 -->
<target name="copyRes" depends="compile" description="copy resources to classes path" >
<echo message="copy resources to classes path"/>
<copy todir="${build.classes}">
<fileset dir="${resources}"/>
</copy>
</target>
<!--5、打成WAR包-->
<target name="generwar" depends="copyRes">
<echo message="generate war"/>
<war destfile="${build.dir}/${ant.project.name}.war" webxml="${webRoot}/WEB-INF/web.xml" >
<fileset dir="defaultRoot" ></fileset>
<lib dir="${build.lib}"/>
<classes dir="${build.classes}"/>
</war>
</target>
<!--6、把WAR放到一个指定目录,这里是直接布署到TOMCAT服务器-->
<target name="deployWar" depends="generwar" description="deploy war">
<echo message="deploy war"/>
<copy file="${build.dir}/${ant.project.name}.war" todir="${webserver}">
</copy>
</target>
<!--7、把打好的WAR删除-->
<target name="deleteWar" depends="deployWar" description="delete war from target directory">
<echo message="delete war from target directory"/>
<delete dir="${build.dir}/${ant.project.name}.war"/>
</target>
</project>
ant脚本生成war包
最新推荐文章于 2023-04-18 10:37:23 发布