ammayjxf

           

          Ant編譯打包項目

          打包項目Ant編譯

          2008年12月27日 | 標簽:

          Blog項目對應的文件目錄樹如下:

          blog:.
          ├─demo                 —— demo 目錄
          ├─sql                      —— sql腳本目錄
          ├─src                      —— Java源文件目錄
          ├─test                     —— 測試文件目錄
          └─web                    —— web存放目錄
              ├─admin
              ├─common
              ├─includes
              ├─scripts
              ├─system
              ├─themes
              ├─UserFiles
              └─WEB-INF       —— j2ee規范目錄
                  ├─classes     —— 編譯路徑
                  ├─config
                  └─lib               —— 類庫目錄
           

          Ant對應的配置:

          XML/HTML代碼
          1. <?xml version="1.0"?>  
          2. <project name="ntsky_blog" default="war" basedir=".">  
          3.     <!– set global properties for this build –>  
          4.     <property name="product" value="ntsky_blog" />  
          5.     <property name="version" value="1.0" />  
          6.     <property name="year" value="2007" />  
          7.     <property name="author" value="ntsky" />  
          8.     <echo message="———– ${product} ${version} [${year}] [${author}] ————" />  
          9.     <property name="name" value="ntsky_blog" />  
          10.     <property name="app.dir" value="." />  
          11.     <property name="web.dir" value="${app.dir}/web" />  
          12.     <property name="src.dir" value="${app.dir}/src" />  
          13.     <property name="lib.dir" value="${web.dir}/WEB-INF/lib" />  
          14.     <property name="jar.name" value="ntsky_blog.jar" />  
          15.     <property name="tomcat.home" value="/usr/local/tomcat" />  
          16.     <property name="war.dir" value="${app.dir}/war" />  
          17.     <property name="build.dir" value="${web.dir}/WEB-INF/classes" />  
          18.     <echo message="" />  
          19.     <echo message="ntsky_blog build file" />  
          20.     <echo message="——————————————————" />  
          21.     <echo message="" />  
          22.     <echo message="Available targets are:" />  
          23.     <echo message="" />  
          24.     <echo message="clean    –> Clean output dirs" />  
          25.     <echo message="build    –> Compile main Java sources and copy libraries" />  
          26.     <echo message="war       –> Build the web application archive" />  
          27.     <echo message="all      –> Clean, build, docs, warfile, tests" />  
          28.     <echo message="" />  
          29.     <!– JAVA CLASSPATH –>  
          30.     <path id="classpath">  
          31.        <fileset dir="${lib.dir}">  
          32.            <include name="**/*.jar" />  
          33.            <include name="**/*.zip" />  
          34.        </fileset>  
          35.     </path>  
          36.     <path id="jsp:classpath">  
          37.        <!– Tomcat 5.0 –>  
          38.        <fileset dir="${tomcat.home}/server/lib">  
          39.            <include name="*.jar" />  
          40.        </fileset>  
          41.        <fileset dir="${tomcat.home}/common/lib">  
          42.            <include name="*.jar" />  
          43.        </fileset>  
          44.        <fileset dir="${tomcat.home}/common/bin">  
          45.            <include name="*.jar" />  
          46.        </fileset>  
          47.        <!–   
          48.        Tomcat 6.0   
          49.        <fileset dir="${tomcat.home}/lib">  
          50.            <include name="*.jar" />  
          51.        </fileset>  
          52.        <fileset dir="${tomcat.home}/bin">  
          53.            <include name="*.jar" />  
          54.        </fileset>  
          55.        –>  
          56.     </path>  
          57.     <target name="clean" description="Clean all build products">  
          58.        <delete dir="${build.dir}" quiet="true" />  
          59.        <delete file="${war.dir}/${name}.war" />  
          60.     </target>  
          61.     <target name="compile" depends="clean" description="Compile application">  
          62.        <echo>Compiled the source.</echo>  
          63.        <mkdir dir="${build.dir}" />  
          64.        <javac srcdir="${src.dir}" destdir="${build.dir}" debug="on" encoding="UTF-8">  
          65.            <include name="**/*.java" />  
          66.            <classpath refid="classpath" />  
          67.        </javac>  
          68.     </target>  
          69.     <target name="jar" depends="compile">  
          70.        <jar destfile="${lib.dir}/ntsky_blog.jar" basedir="${build.dir}" includes="**/*.class" >  
          71.            <fileset dir="${src.dir}">  
          72.               <include name="**/*.xml" />  
          73.               <include name="**/*.properties" />        
          74.               <exclude name="*.properties" />  
          75.               <exclude name="*.xml" />  
          76.            </fileset>           
          77.        </jar>  
          78.     </target>  
          79.     <target name="war" depends="compile" description="Build the web application archive">  
          80.        <delete dir="${build.dir}" quiet="true" />  
          81.        <copy todir="${build.dir}">  
          82.            <fileset dir="${src.dir}">  
          83.               <include name="*.properties" />  
          84.               <include name="*.xml" />  
          85.            </fileset>    
          86.        </copy>  
          87.        <mkdir dir="${war.dir}" />  
          88.        <war warfile="${war.dir}/${name}.war" webxml="${web.dir}/WEB-INF/web.xml">  
          89.            <fileset dir="${web.dir}" />  
          90.        </war>  
          91.     </target>  
          92.     <target name="compile-jsp">  
          93.   
          94.        <taskdef classname="org.apache.jasper.JspC" name="jasper">  
          95.            <classpath refid="jsp:classpath" />  
          96.        </taskdef>  
          97.   
          98.        <mkdir dir="${app.dir}/jspSrc" />  
          99.        <mkdir dir="${app.dir}/${product}" />  
          100.        <jasper verbose="0" package="ntsky_blog" outputDir="${app.dir}/jspSrc" uriroot="${app.dir}/WebRoot"/>  
          101.   
          102.        <javac srcdir="${app.dir}/jspSrc/ntsky_blog" destdir="${app.dir}" debug="on" encoding="UTF-8">  
          103.            <include name="**/*.java" />  
          104.            <exclude name="inc/*.java"/>  
          105.            <classpath refid="classpath" />  
          106.            <classpath refid="jsp:classpath" />  
          107.        </javac>  
          108.     </target>  
          109.     <target name="deploy" depends="jar" description="Build the web application archive">  
          110.        <delete dir="${build.dir}" quiet="true" />  
          111.        <copy todir="${build.dir}">  
          112.            <fileset dir="${src.dir}">  
          113.               <include name="*.properties" />  
          114.               <include name="*.xml" />  
          115.               <include name="*.server" />  
          116.            </fileset>  
          117.        </copy>  
          118.     </target>  
          119. </project>  
          120.   

          說明 :

          1. 運行ant -f build.xml war或ant 將生成ntsky_blog.war包,將包丟到tomcat webapps下tomcat就會解包。
          2. ant -f  build.xml deploy將執行deploy這個target,將得到blog項目目錄,將目錄拷貝到tomcat/webapps下也可以運行
          3. 發布war包或目錄時候都會生成ntsky_blog.jar,jar中包含ibatis對應的xml配置文件,而sturts這類配置文件還是在WEB-INF的classes下。
          4. 如果需要可以配置編譯jsp的tag(編譯jsp省去了tomcat自己編譯jsp的步驟,當第一次訪問jsp的時候,tomcat自己去編譯而感覺速度很慢

          posted on 2009-11-19 21:03 ammay 閱讀(1283) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          統計

          常用鏈接

          留言簿

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 宝清县| 玉山县| 德庆县| 壤塘县| 汝南县| 江津市| 乳源| 开封县| 淮北市| 凭祥市| 灵寿县| 五指山市| 井陉县| 丹东市| 泰安市| 四会市| 肇庆市| 获嘉县| 疏附县| 洛南县| 沾益县| 汨罗市| 南乐县| 乌兰浩特市| 陇川县| 霍邱县| 长治市| 仁寿县| 樟树市| 吉隆县| 博白县| 莎车县| 启东市| 长寿区| 桃园市| 涡阳县| 万源市| 疏附县| 丰宁| 余江县| 即墨市|