ant脚本编译支配java工程到tomcat服务器

ant脚本编译部署java工程到tomcat服务器

<?xml version="1.0" encoding="UTF-8"?>
<project name="projectName" default="deleteWar" basedir=".">
<property name="build" value="${basedir}/build" />
<property name="build.class" value="${build}/classes"/>
<property name="src" value="${basedir}/src" />
<property name="webRoot" value="${basedir}/WebRoot"/>
<property name="lib" value="WEB-INF/lib"/>
<!--定义CLASSPACH,编译时用到你外部加入的包-->
<path id="classpath">
   <pathelement location="${src}" />
   <fileset dir="${lib}" includes="***.jar" />
</path>

<!--请将下面的路径改为你本地的路径-->
<property name="webserver" value="tomcat目录/webapps"/>

<!--删除任务-->
<target name="clean" description="删除">
   <echo message="删除目录"/>
   <delete dir="${build}" />
</target>

<!--创建一个临时目录-->
<target name="init" description="创建目录" depends="clean">
   <echo message="创建目录--以执行"/>
   <mkdir dir="${build.class}" />
</target>


<!--编译java源文件-->
<target name="compile" description="编译文件" depends="init">
   <echo message="编译文件"/>
   <javac srcdir="${src}" destdir="${build.class}">
    <classpath refid="classpath" />
    <compilerarg    line="-encoding utf-8 "/>
   </javac>
</target>

<!--打成WAR包-->
<target name="generwar" depends="compile">
   <echo message="打成WAR"/>
   <war destfile="${build}/${ant.project.name}.war" webxml="WEB-INF/web.xml" >
    <fileset dir="webcontent" ></fileset>
    <lib dir="${lib}"/>
    <classes dir="${build.class}"/>
   </war>
</target>

<!--把打好的WAR删除-->
<target name="deleteWar" depends="fabu" description="删除服务器上的war">
   <delete dir="${build}"/>
</target>


<!--把WAR放到一个指定目录,这里是直接布署到TOMCAT服务器-->
<target name="fabu" depends="generwar" description="发布">
   <copy file="${build}/${ant.project.name}.war" todir="${webserver}">
   </copy>
</target>

</project>