雅典之夏的小站
          知人者智 自知者明 Fighting!!

          Ant的簡(jiǎn)介:類(lèi)似make工具,但可以支持多平臺(tái)
          Ant的安裝:配置ant的準(zhǔn)備工作:ant_home 指Ant的安裝目錄,在path中加入%ant_home%/bin,用于命令行下
                  運(yùn) 行ant
          Ant的結(jié)構(gòu):主要是通過(guò)對(duì)build.xml的配置,
                               Ant內(nèi)置任務(wù):                                                描述
                                  property                                              設(shè)置name/value的屬性        
                                  mkdir                                                   創(chuàng)建目錄
                                  copy                                                     拷貝
                                  delete                                                   刪除
                                  javac                                                    編繹
                                  war                                                      打包
          下面是一個(gè)簡(jiǎn)單build.xml的示例:
          <project name="bookstore" default="about" basedir=".">

              <target name="init">
                  <tstamp/>
                  <property name="build" value="build" />
                  <property name="src" value="src" />
                  <property environment="myenv" />
                  <property name="servletpath"  value="${myenv.CATALINA_HOME}/common/lib/servlet-api.jar" />
                  <property name="mysqlpath" value="WEB-INF/lib/mysqldriver.jar" />

           <mkdir dir="${build}" />
           <mkdir dir="${build}\WEB-INF" />
           <mkdir dir="${build}\WEB-INF\classes" />

                <copy todir="${build}" >
                  <fileset dir="${basedir}"    >
                     <include name="*.jsp" />
                     <include name="*.bmp" />
                     <include name="WEB-INF/**" />
                     <exclude name="build.xml" />
                  </fileset>
               </copy>
           
             </target>


            <target name="compile" depends="init">       

               <javac srcdir="${src}"
                       destdir="${build}/WEB-INF/classes"
                       classpath="${servletpath}:${mysqlpath}">
               </javac>
            </target>
           
             <target name="bookstorewar" depends="compile">       

              <war warfile="${build}/bookstore.war" webxml="${build}/WEB-INF/web.xml">
           <lib dir="${build}/WEB-INF/lib"/>
           <classes dir="${build}/WEB-INF/classes"/>
           <fileset dir="${build}"/>
              </war>
              </target>

            <target name="about" >
                  <echo>
           This build.xml file contains targets
                 for building bookstore web application
                  </echo> 
             </target>

          </project>

          從示例我們看出來(lái),整個(gè)xml是一個(gè)project,project下有幾個(gè)為init,compile,的target
          運(yùn)行時(shí)首先在這個(gè)目錄下打開(kāi)dos窗口,以這個(gè)xml為準(zhǔn),如果你只運(yùn)行ant那么只會(huì)輸出echo中的內(nèi)容
          因?yàn)閜roject的default是about; 如果運(yùn)行ant complie 它會(huì)執(zhí)行兩個(gè)target: init 和complie,因?yàn)閏omplie是依靠init
          的。
                用了以后發(fā)現(xiàn)ant 原來(lái)很簡(jiǎn)單,當(dāng)然現(xiàn)在只是學(xué)了個(gè)皮毛而已。

          posted on 2005-11-25 14:53 rkind 閱讀(258) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 開(kāi)發(fā)工具區(qū)
          主站蜘蛛池模板: 长沙县| 贺兰县| 百色市| 达州市| 色达县| 九寨沟县| 十堰市| 习水县| 阳高县| 黔南| 疏勒县| 综艺| 夹江县| 神农架林区| 玉树县| 曲靖市| 成都市| 贵溪市| 临汾市| 革吉县| 武平县| 家居| 郸城县| 壶关县| 恩施市| 出国| 绥滨县| 滨州市| 霍城县| 介休市| 甘南县| 阳信县| 淅川县| 潍坊市| 广昌县| 正蓝旗| 原平市| 温泉县| 盐津县| 德江县| 淳安县|