HelloWorld 善戰者,求之于勢,不責于人;故能擇人而任勢。

          知止而后有定,定而后能靜,靜而后能安,安而后能慮,慮而后能得。物有本末,事有終始。知所先后,則近道矣。

            BlogJava :: 首頁 ::  :: 聯系 ::  :: 管理 ::
            167 隨筆 :: 1 文章 :: 40 評論 :: 0 Trackbacks
          1.project標簽
          <project basedir=”.” name=”example” default=”main”>
          ….
          <target name=”main”>
          ….
          </target>
          ….
          </project>
          project 標記包含3個屬性:
          。basedir 指定項目所在的目錄位置
          。name 設定項目的名稱
          。default 設頂項目的build執行時預設的target

          2.target標簽
          target標簽在project標簽之內,一個project可以包含多個target
          ….
          <target name=”init”>
          </target>
          <target desponds=”init” description=”執行程序” name=”main”>
          </target>
          ….
          target 標簽包含6個屬性
          。description 對于這個target的描述
          。name target的名稱
          。depends 所依賴的其他target
               example:
          {
               <target name=”x”/>
               <target name=”y”/>
               <target depends=”x,y” name=”z”/>
               …..
               執行順序為xyz
          }
          。if 檢查某個屬性(x)設置了,只有這個屬性(x)的時候target才執行
               example
               {
                   <property name=”someOne” value=”someValue”/>
                   <target name=”init”>
                   </target>
                   <target if=”someOne” deends=”init” description=”執行程序” name=”main”>
                   </target>
                   …..
                   只有someOne這個屬性被設置了,init執行了,main才執行
               }
          。unless 檢查某個屬性(x)是否被設置了,和if相反,只有這個屬性沒有設置的時候才執行這個任務。
          。id 標記這個target的id.
          3.task標簽
          task 可以用來執行一個特定的工作,在Ant中已經做了許多工作,而且Ant的結構也支持所以用者自己開發task,只要在使用前申明這個task就可以了
               example:
          {
               <target name=”xdoclet”>
                   <taskdef classpathref=”path” classname=”xdoclet.modules.ejb.A” name=”ejbdoclet”>
                   <taskdef          classpathref=”path” className=”xdoclet.modules.B” name=”jbossnet”>
                   <ejbdoclet ejbspec=”2.0” destDir=”src”>
                       <fileset dir=”src”      includes=”**/*.java” />
                       <deploymentdescriptior destDir=”src/META-INF” />
                       <homeinterface/>
                       <remoteinterface/>
                       <jboss version=”4.0” destDir=”src/META-INF” />
                       <jbossnet webDeploymentName=”hello” prefix=”hello” destDir=”build/hello/META-INF” targetNameSpace=”http://….” />
                       <packageSubstitution packages=”ejb” substituteWith=”interfaces”/>
                   </ejbdoclet>
               </target>
          }

          4.基本的元素
               ⑴property用來標記project中一些公用的設定值,
               example:
          {
               ……
               <property id=”ref” name=”source” value=”src”/>
               <property name=”scr” refid=”ref” />
               <property name=”jboss.test.jbossmx” location=”${build.lib}/jboss-jmx.jar”/>
               ……

               也可以從其他文件取得屬性
               <property enviroment=”env” />
               <property resource=”org/jboss/tools/task.properties”/>
               <property file=”./task.properties”/>
          }
               ⑵路徑classpath可以在target中設置java的classpath
                       example:
          {
                       <target name=”compile-classes”>
                           <mkdir dir=”${build.classes}”/>
                           <javac destdir=”${build.classes}” target=”${javac.target}”>
                               <classpath>
                                   <pathelement Location=”{build.classes}”/>
                                   <pathelement Location=”{bodule.source}/test”/>
                                   <path refid=”javac.classpath”/>
                               </classpath>
                           </javac>
                       </target>
                       。。。。。。。
                       也可以通過path設定通用的路徑,然后在其他的位置應用
                           <path id=”path”>
                               <fileset dir=”${lib}”>
                                   <include name=”*.jar”/>
                               </fileset>
                               <pathelement location=”${build.classes}”/>
                           </path>
                           <target name=”compile-classes”>
                               <mkdir dir=”${build.classes}”/>
                               <javac destdir=”{build.classes}” target=”${javac.target}”>
                                   <classpath      refid=”path”/>
                               </javac>
                           </target>
                           …….
          }

          ⑶文件相關的標簽
          fileset用來描述一些文件的集合:
          。dir 設定fileset的根目錄的位置
          。exclude 設定fileset不包含的文件
          。include 設定fileset包含的文件
               example {
                   …..
                   <fileset      dir=”${source.java}”>
                       <include name=”**/*.properties”/>
                       <exclude name=”**/javax.servlet.jar”/>
                       <exclude name=”**/xxx.jar”/>
                   </fileset>
                   …
          }

          。dirset用來描述目錄的集合:
          。dir      設定dirset的根目錄位置
          。exclude設定dirset不包含的文件
          。include 設定dirset包含的文件
               example {
                   …..
                   <dirset      dir=”${build.dir }”>
                       <include name=”**/classes”/>
                       <exclude name=”**/*Test**”/>
                   </dirset>
                   …
          }
          。mkdir用來描述目錄的集合:
          。dir      設定要建立的目錄
               example
               {
                   …
                   <mkdir dir=”${build}”/>
                   <mkdir dir=”${build}/classes”/>
                   <mkdir dir=”${doc}/>
                   …
          }
          。copy用來復制文件
          。todir 用來設定復制文件的目的地
          。fileset做為要復制的文件的集合,在copy下可以放置多個fileset和其他文件的標簽
                   example
                   {
                       …
                       <copy todir=”${build}/war”>
                           <fileset dir=”${src}/classes”></fileset>
                       </copy>
                       …
          }

          。delete 用來刪除文件
          。fileset做要刪除文件的集合,可以放多個標簽和其他的文件的標簽
                   example
                   {
                       …
                       <delete>
                           <fileset dir=”${build}” include=”**/*.java”/>
                       </delete>
                       …
          }

          5.結構標簽
          ⑴ant用來呼叫其他的build文件, 讓多個子文件可以一起工作
          ,antfile 指定的外部build文件
          。target 指定的外部build文件中的一個target

          <ant antfile=”anotherbuild.xml”/>
          <ant antfile=”anotherbuild.xml” target=”compile”/>
          ….
          ⑵antcall 可以調用其他的target
          。target 指定的target名稱
          。param 調用時傳的參數

          <target      name=”init”>
          </target>
          <antcall target=”iniit”>
               <param name=”parame1” value=”value1”/>
          </anticall>

          ⑶sequential 在sequential中的任務將被依照順序執行

          <sequential>
               <anticall target=”task1”></anticall>
               <anticall target=”task2”></anticall>
               <anticall target=”task3”></anticall>
          </sequential>

          ⑷parallel 在parallel中的任務將會被并行執行

          < parallel >
               <anticall target=”task1”></anticall>
               <anticall target=”task2”></anticall>
               <anticall target=”task3”></anticall>
          </ parallel >


          </script>

          posted on 2007-08-13 18:49 helloworld2008 閱讀(2597) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 都兰县| 威远县| 翼城县| 波密县| 昌吉市| 福清市| 永丰县| 宁远县| 东海县| 闽清县| 抚顺县| 岗巴县| 边坝县| 漳州市| 辽阳县| 彭州市| 于都县| 聂荣县| 德惠市| 龙门县| 方城县| 乐至县| 从化市| 大方县| 佳木斯市| 柏乡县| 金寨县| 汕尾市| 阳朔县| 永寿县| 红桥区| 开鲁县| 镇赉县| 长治县| 河间市| 错那县| 平昌县| 利辛县| 大连市| 波密县| 麻城市|