編輯:開發入門
一.Ant簡介
Ant是一種基於Java的build工具,有些類似於unix系統中的make命令,Ant是apache軟件基金會Jakarta目錄中的一個子項目,具有跨平台性,操作簡單。。等特點。
這裡就不說這些老套的話了,大家知道就是一種build工具就可以了,具體有什麼用和怎麼用,我們稍後說明。
二.Ant的主要標簽及數據類型
Ant構建文件是一個xml文件,一般默認命名為build.XML,如果是web project,通常把構建文件放在頂層目錄下,即和src文件夾並列。
一個Ant構建文件需要定義一個唯一的項目元素(project元素),還可以定義多個目標元素(target元素),各個目標元素之間可以有一定的依賴關系,如:
<target name="compile">
<target name="deploy" depends="compile">
如上,deploy依賴與compile,即:系統必須先compile完了,然後才能deploy。
下面簡要介紹一下Ant的主要標簽:
1.<project>標簽
每個構建文件對應一個項目。<project>標簽是構建文件的根標簽。它可以有多個內在屬性,其各個屬性的含義分別如下:
(1) default表示默認的運行目標,這個屬性是必須的。
(2) basedir表示項目的基准目錄。
(3) name表示項目名。
(4) descrīption表示項目的描述。
2.<target>標簽
Target的常用屬性如下。
(1).name表示目標名稱,這個屬性是必須的。
(2).depends表示依賴的目標。
(3)if表示僅當屬性設置時才執行。
(4)unless表示當屬性沒有設置時才執行。
(5)descrīption表示項目的描述。
Ant的depends屬性指定了target的執行順序。Ant會依照depends屬性中target出現順序依次執行每個target。在執行之前,首先需要執行它所依賴的target。
3.<mkdir>標簽
該標簽用於創建一個目錄,它有一個屬性dir用來指定所創建的目錄名。
4<jar>標簽
該標簽用來生成一個JAR文件,其屬性如下。
(1) destfile表示要生成的JAR文件名。
(2) basedir表示被歸檔的文件名。
(3) includes表示需要歸檔的文件模式。
(4) exchudes表示被排除的文件模式。
5.<Javac標簽>
該標簽用於編譯一個或一組Java文件,其屬性如下。
(1).srcdir表示源程序的目錄。
(2).destdir表示class文件的輸出目錄。
(3).include表示被編譯的文件的模式。
(4).excludes表示被排除的文件的模式。
(5).classpath表示所使用的類路徑。
(6).debug表示包含的調試信息。
(7).optimize表示是否使用優化。
(8).verbose 表示提供詳細的輸出信息。
(9).fileonerror表示當碰到錯誤就自動停止。
6.<Java>標簽
該標簽用來執行編譯生成的.class文件,其屬性如下。
(1).classname 表示將執行的類名。
(2).jar表示包含該類的JAR文件名。
(3).classpath所表示用到的類路徑。
(4).fork表示在一個新的虛擬機中運行該類。
(5).failonerror表示當出現錯誤時自動停止。
(6).output 表示輸出文件。
(7).append表示追加或者覆蓋默認文件。
7.<delete>標簽
該標簽用於刪除一個文件或一組文件,其屬性如下。
(1)/file表示要刪除的文件。
(2).dir表示要刪除的目錄。
(3).includeEmptyDirs 表示指定是否要刪除空目錄,默認值是刪除。
(4).failonerror 表示指定當碰到錯誤是否停止,默認值是自動停止。
8.<copy>標簽
該標簽用於文件或文件集的拷貝,其屬性如下。
(1).file 表示源文件。
(2).tofile 表示目標文件。
(3).todir 表示目標目錄。
(4).overwrite 表示指定是否覆蓋目標文件,默認值是不覆蓋。
(5).includeEmptyDirs 表示制定是否拷貝空目錄,默認值為拷貝。
(6).failonerror 表示指定如目標沒有發現是否自動停止,默認值是停止。
如果我們部署一個 web應用的話,經常用到的標簽有:delete,mkdir,copy,jar,target,project。
三.使用Ant發布web應用到tomcat
下面我們以一個簡單的例子,來演示如何使用Ant發布web應用到tomcat。我們假設有個很簡單的web projcet,我們想使用Ant來將服務部署到tomcat,假設在web project的根目錄下有個build.XML文件,我們可以如此編輯該構建文件。
<project name="demo" basedir=".">
<!--定義tomcat所在目錄-->
<property name="webapp" value="D:/tomcat/webaPPS/ROOT" />
<target name="core">
<!--刪除原來部署的文件-->
<delete dir="${webapp}"></delete>
<mkdir dir="${webapp}" />
<!--將編譯後的文件拷貝到tomcat目錄下-->
<copy todir="${webapp}" overwrite="true">
<fileset dir="${basedir}/WebRoot"/>
</copy>
</target>
</project>
完事了?yes!非常簡單!當然,如上代碼的前提是:在eclipse+Myeclipse環境下開發,並且將自動編譯開關開開,這樣我們只需要將編譯好的文件拷貝到tomcat目錄下即可,如果不是在這種環境下開發,我們可能就需要先使用Javac命令編譯一下,然後再拷貝到tomcat目錄下。
如果我們想把該web project中的Java文件打成jar包,放置在WEB-INF/lib目錄下,將其他文件拷貝到tomcat/webaPPS目錄下,我們可以使用如下構建文件:
<project name="demo" basedir=".">
<property name="webapp" value="D:/tomcat/webaPPS/ROOT" />
<target name="core">
<!--刪除原來部署的文件-->
<delete dir="${webapp}"></delete>
<mkdir dir="${webapp}" />
<!--除了class文件外,其他文件拷貝到tomcat目錄下-->
<copy todir="${webapp}" overwrite="true">
<fileset dir="${basedir}/WebRoot" excludes="**/*.class"/>
</copy>
<!--將class文件打包,放到/WEB-INF/lib目錄下-->
<jar destfile="${webapp}/WEB-INF/lib/test.jar">
<fileset dir="${basedir}/WebRoot/WEB-INF/classes">
<include name="**/*.class" />
</fileset>
</jar>
</target>
</project>
怎麼樣?我們上面用到了copy,delete,mkdir,fileset,include,excludes這些標簽,你可明白?
創建內容提供器和 Google Maps 應用程序您已經看到了一個完整的應用程序示例,現在簡要討論一下更加復雜的應用程序。內容提供器和 Google Maps本教程中討
所需的工具開始開發 Android 應用程序的最簡捷的方式是下載 android SDK 和 Eclipse IDE(參見 參考資料)。android 開發可
作為開發者,你的第一感覺是你拿到這個開發框架寫“Hello, World!”程序時的難易程度給你留下的。 當然,在android裡,這個非常容易,下面我給你演
簡介難以想象還有哪種技術比移動電話更流行。大量的平台在銷售和心理份額方面爭占此行業的頂級市場。設備是高級的工程樣品,真正讓它們流行起來的動力在於這些平台上可用的大量應用