posts - 325,  comments - 25,  trackbacks - 0

          本文通過一個示例來解說如何通過ant進行編譯和發(fā)布項目。
          本例按如下目錄結(jié)構(gòu)來組織項目。
          D:/web/antsample項目根目錄
          D:/web/antsample/src源代碼目錄
          D:/web/antsample/src/sample/HelloWorld.java示例HelloWorld代碼文件
          D:/web/antsample/app應用程序目錄
          D:/web/antsample/app/index.jsp默認首頁文件
          D:/web/antsample/app/WEB-INF
          D:/web/antsample/app/WEB-INF/web.xml應用程序描述文件
          D:/web/antsample/app/WEB-INF/lib應用程序庫目錄
          D:/web/antsample/context.xml應用程序環(huán)境配置文件,數(shù)據(jù)源、應用程序路徑(path)、文檔路徑(docBase)等信息在此配置。
          D:/web/antsample/build.xml
          build.xml 文件內(nèi)容
          <?xml version="1.0" encoding="UTF-8"?>
          <project name="antsample" default="jar" basedir=".">
           <property environment="env"/>
           <echo message="Ant 版本 ${ant.java.version}"/> 
           <property name="tomcat.home" value="/home/xiaojf/tomcat6"/> <!-- tomcat目錄 -->
           <property name="web.home" value="./app"/> <!-- 應用程序目錄 -->
           <property name="src.home" value="./src"/> <!-- java源文件目錄 -->
           <property name="jarFile" value="${web.home}/WEB-INF/lib/${ant.project.name}.jar"/> <!-- jar文件位置 -->
           <property name="warFile" value="./${ant.project.name}.war"/> <!-- war文件位置 -->
           <property name="srcDeployFile" value="./context.xml"/> <!-- 源部署文件 -->
           <property name="distDeployFile" value="${tomcat.home}/conf/Catalina/localhost/${ant.project.name}.xml"/> <!-- 源部署文件 -->
           <property name="jdk1.5" value="/usr/lib/jvm/jdk1.5/bin/javac"/> <!-- 設(shè)置jdk1.5編譯器的全路徑 -->
           <property name="jdk1.6" value="/usr/lib/jvm/jdk1.6/bin/javac"/> <!-- 設(shè)置jdk1.6編譯器的全路徑 -->
           <property name="javaCompiler" value="${jdk1.6}"/> <!-- 編譯時使用的javac -->
           <!-- 設(shè)置 classpath,即編譯時需要引用的庫文件 -->
           <path id="classpath">
           <fileset dir="${web.home}/WEB-INF/lib"> <!-- 引用應用程序WEB-INF/lib下的所有jar -->
              <include name="**/*.jar"/>
           </fileset>
           <fileset dir="${tomcat.home}/lib"> <!-- 引用Tomcat/lib下的所有jar -->
              <include name="**/*.jar"/>
           </fileset>
             </path>
           <!-- 清除已經(jīng)生成的class文件 -->
             <target name="clean">
           <delete>
           <fileset dir="${src.home}" includes="**/*.class"/>
           </delete>
             </target>
           <!-- 編譯src.home下的所有java文件。fork被設(shè)置為true,這樣可指定編譯使用的JDK,此處使用jdk1.5。必須根據(jù)java源文件的編碼來設(shè)置encoding。 -->
             <target name="compile" depends="clean">
           <javac srcdir="${src.home}"
             debug="on"
             deprecation="on"
             optimize="off"
             includes="**"
             includeantruntime="on"
             encoding="UTF-8"
             fork="yes"
             executable="${javaCompiler}"
             >
             <classpath refid="classpath"/>
             <compilerarg value="-Xlint:unchecked"/>
           </javac>
             </target>
           
           <!-- 打包,并將jar放置在應用程序WEB-INF/lib下。 -->
           <target name="jar" depends="compile">
           <jar destfile="${jarFile}"
           basedir="${src.home}"
           includes="**/*.class **/*.xml"/>
           </target>
           
           <target name="war" depends="jar">
           <war destfile="${warFile}"
           basedir="${web.home}"/>
           </target>
           
           <!-- 布置應用程序到Tomcat -->
           <target name="deploy">
           <copy file="${srcDeployFile}" tofile="${distDeployFile}"/>
           </target>
           <!-- 從Tomcat上卸載應用程序 -->
           <target name="undeploy">
           <delete file="${distDeployFile}"/>
           </target>
          </project>
           
          運行本例,您必須修改build.xml中tomcat目錄的全路徑和context.xml中的相應信息。
          進入D:/web/antsample,輸入ant命令,即可編譯程序,并將其生成的class文件打包成jar,布置到app/WEB-INF/lib下。
          運行ant deploy 即可拷貝context.xml到Tomcat/conf/Catalina/localhost/antsample.xml,完成程序的布置。
          運行ant undeploy 即可刪除Tomcat/conf/Catalina/localhost/antsample.xml文件完成程序的卸載。

          現(xiàn)在您可以輸入 http://localhost:8080/antsample 來訪問例子程序了。

          posted on 2012-05-10 12:30 長春語林科技 閱讀(2952) 評論(0)  編輯  收藏 所屬分類: util
          <2012年5月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

           

          長春語林科技歡迎您!

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 北宁市| 镇江市| 从化市| 富蕴县| 屯门区| 奉化市| 泸溪县| 维西| 土默特右旗| 晋中市| 吴江市| 玉环县| 满洲里市| 祁门县| 霍山县| 呼伦贝尔市| 长丰县| 大洼县| 阿勒泰市| 赤水市| 阳朔县| 常山县| 克拉玛依市| 双流县| 七台河市| 格尔木市| 稻城县| 哈尔滨市| 柳州市| 新平| 金山区| 耒阳市| 东兰县| 旬邑县| 呼伦贝尔市| 铁力市| 乐安县| 新乡县| 宣恩县| 长葛市| 嘉鱼县|