ant 的構建腳本0


下面的xml是ant 的構建腳本, 功能包括:  編譯,部署到tomcat, 啟動tomcat,停止tomcat, 重新載入。  使用前必須安裝 jdk 和 ant , 然后運行ant init,初始化工程目錄,  就可以進行開發了。(題外話:在這個ide工具傻瓜式開發的時代里,ant依舊顯示它的優秀之處,它能完成比ide更靈活的任務, 從設計的角度說,操作越復雜的工具應是是越靈活滴 ^_^

Java代碼 <?xml version="1.0" encoding="UTF-8"?>   
  1. <project name="zkProject" default="compile" basedir=".">   
  2.     <property name="webapp.name"    value="zkproject"/>   
  3.     <property name="catalina.home" value="D:/Program Files/apache-tomcat-6.0.16"/>     
  4.     <property name="src.dir"      value="${basedir}/WEB-INF/src"/>   
  5.     <property name="lib.dir"    value="${basedir}/WEB-INF/lib"/>   
  6.     <property name="class.dir"    value="${basedir}/WEB-INF/classes"/>   
  7.     <property name="webapps.dir" value="${catalina.home}/webapps"/>   
  8.     <property name="ui.dir"    value="ui"/>   
  9.     <!-- **********************************set classpath********************************** -->   
  10.     <path id="compile.classpath">   
  11.         <fileset dir="${catalina.home}/lib">   
  12.           <include name="*.jar"/>   
  13.         </fileset>   
  14.         <fileset dir="${lib.dir}">   
  15.           <include name="*.jar"/>   
  16.         </fileset>   
  17.     </path>   
  18.     <!-- **********************************init********************************** -->   
  19.     <target name="init">   
  20.         <mkdir dir="${src.dir}"/>   
  21.         <mkdir dir="${lib.dir}"/>   
  22.         <mkdir dir="${ui.dir}"/>   
  23.     </target>   
  24.   
  25.     <!-- **********************************clean class********************************** -->   
  26.     <target name="clean" description="Delete old build and dist directories">   
  27.         <delete dir="${class.dir}"  includes="**/*.class"/>    
  28.     </target>   
  29.   
  30.     <!-- **********************************compile java********************************** -->   
  31.     <target name="compile" description="Compile Java sources" depends="clean">   
  32.         <mkdir dir="${class.dir}"/>   
  33.         <javac srcdir="${src.dir}"  
  34.               destdir="${class.dir}">   
  35.             <classpath refid="compile.classpath"/>   
  36.         </javac>   
  37.   
  38.         <copy  todir="${class.dir}">   
  39.           <fileset dir="${src.dir}" excludes="**/*.java"/>   
  40.         </copy>    
  41.     </target>   
  42.   
  43.     <!-- **********************************deploy   webapp********************************** -->   
  44.     <target name="deploy" description="Install application to servlet container" depends="compile">   
  45.         <delete dir="${webapps.dir}/${webapp.name}"/>   
  46.         <war destfile="${webapps.dir}/${webapp.name}.war" webxml="${basedir}/WEB-INF/web.xml">    
  47.             <fileset dir="ui"/>   
  48.             <lib dir="${lib.dir}"/>    
  49.             <classes dir="${class.dir}"/>            
  50.         </war>    
  51.     </target>     
  52.   
  53.     <!-- **********************************start  web server********************************** -->   
  54.        
  55.     <target name="startserver" description="Start  web server" >   
  56.         <exec dir="${catalina.home}/bin" executable="cmd.exe">   
  57.             <env key="CATALINA_HOME" path="${catalina.home}"/>   
  58.             <arg value="/c startup.bat"/>   
  59.         </exec>   
  60.     </target>   
  61.        
  62.     <!-- **********************************stop  web server********************************** -->   
  63.        
  64.     <target name="stopserver" description="Stop  web server" >   
  65.         <exec dir="${catalina.home}/bin" executable="cmd.exe">   
  66.             <env key="CATALINA_HOME" path="${catalina.home}"/>   
  67.             <arg value="/c shutdown.bat"/>   
  68.         </exec>   
  69.     </target>   
  70.        
  71.     <!-- **********************************start work**********************************  -->   
  72.     <target name="start" description="Clean build and dist directories, then compile">   
  73.         <ant target="deploy"/>   
  74.         <ant target="startserver"/>   
  75.     </target>   
  76.        
  77.     <!-- **********************************reload  web server********************************** -->   
  78.        
  79.     <target name="reload" description="reload  web server">   
  80.         <ant target="stopserver"></ant>   
  81.         <sleep seconds="2"></sleep>   
  82.         <ant target="start"></ant>   
  83.     </target>   
  84. </project>  

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com