一个部署web项目的ant脚本

<?xml version="1.0" encoding="UTF-8"?>  
<project name="loginProject" default="compile" basedir=".">  
    <property name="webapp.name"    value="loginProject"/>  
    <property name="catalina.home" value="C:\Program Files\Apache Software Foundation\Tomcat 6.0"/>    
    <property name="src.dir"      value="${basedir}/WEB-INF/src"/>  
    <property name="lib.dir"    value="${basedir}/WEB-INF/lib"/>  
    <property name="class.dir"    value="${basedir}/WEB-INF/classes"/>  
    <property name="webapps.dir" value="${catalina.home}/webapps"/>  
    <property name="web.dir"    value="WebContent"/>  
    <property name="war.dir"    value="war"/>
    <!-- **********************************set classpath********************************** -->  
    <path id="compile.classpath">  
        <fileset dir="${catalina.home}/lib">  
          <include name="*.jar"/>  
        </fileset>  
        <fileset dir="${lib.dir}">  
          <include name="*.jar"/>  
        </fileset>  
    </path>  
    <!-- **********************************init********************************** -->  
    <target name="init">  
        <mkdir dir="${src.dir}"/>  
        <mkdir dir="${lib.dir}"/>  
        <mkdir dir="${page.dir}"/>
        <mkdir dir="${war.dir}"/>  
    </target>  

    <!-- **********************************clean class********************************** -->  
    <target name="clean" description="Delete old build and dist directories">  
        <delete dir="${class.dir}" includes="**/*.class"/>   
    </target>  

    <!-- **********************************compile java********************************** -->  
    <target name="compile" description="Compile Java sources" depends="clean">  
        <mkdir dir="${class.dir}"/>  
        <javac srcdir="${src.dir}"
              destdir="${class.dir}">  
            <classpath refid="compile.classpath"/>  
        </javac>  

        <copy todir="${class.dir}">  
          <fileset dir="${src.dir}" excludes="**/*.java"/>  
        </copy>   
    </target>  

    <!-- **********************************deploy   webapp********************************** -->  
    <target name="deploy" description="Install application to servlet container" depends="compile">  
        <delete dir="${webapps.dir}/${webapp.name}"/>  
       <!--
       <war destfile="${webapps.dir}/${webapp.name}.war" basedir="${web.dir}" webxml="${basedir}/WEB-INF/web.xml">   
       -->    
       <war destfile="${war.dir}/${webapp.name}.war" basedir="${web.dir}" webxml="${basedir}/WEB-INF/web.xml">   
      
            <lib dir="${lib.dir}"/>   
            <classes dir="${class.dir}"/>           
        </war>   
    </target>    

    <!-- **********************************start web server********************************** -->  
      
    <target name="startserver" description="Start web server" >  
        <exec dir="${catalina.home}/bin" executable="cmd.exe">  
            <env key="CATALINA_HOME" path="${catalina.home}"/>  
            <arg value="/c startup.bat"/>  
        </exec>  
    </target>  
      
    <!-- **********************************stop web server********************************** -->  
      
    <target name="stopserver" description="Stop web server" >  
        <exec dir="${catalina.home}/bin" executable="cmd.exe">  
            <env key="CATALINA_HOME" path="${catalina.home}"/>  
            <arg value="/c shutdown.bat"/>  
        </exec>  
    </target>  
      
    <!-- **********************************start work********************************** -->  
    <target name="start" description="Clean build and dist directories, then compile">  
        <ant target="deploy"/>  
        <ant target="startserver"/>  
    </target>  
      
    <!-- **********************************reload web server********************************** -->  
      
    <target name="reload" description="reload web server">  
        <ant target="stopserver"></ant>  
        <sleep seconds="2"></sleep>  
        <ant target="start"></ant>  
    </target>  
</project>
posted @ 2010-07-10 17:50  macula7  阅读(3076)  评论(0编辑  收藏  举报