top
Loading...
Eclipse中集成Ant實現快速開發
如今Java程序員中很少有人使用命令行方式編程,而越來越多的人習慣使用某種IDE,且大部分選擇Eclipse。本文將你展示如何在Eclipse中集成Ant-從在Eclipse中創建工程到編寫Ant build.xml文件,再直接從Eclipse中運行這個文件。

Ant是Java開發界領先的構建工具,而Eclipse是主要針對Java程序員的集成開發環境(IDE)。Eclipse在可視化方面做得非常優秀,而Ant卻提供了極強的構建功能。因此,Eclipse 3.0版本中一同發行了Ant1.6.1(本文成文之時),并且在Eclipse中提供了一個可擴展的Ant接口。

提示:難道Ant沒有它自己的IDE?這個問題提得好!其實,在2000年出現的Antidote最初有望成為Ant IDE(見http://archive.apache.org/dist/ant/antidote/),但不幸的是,這一工程如今面臨被淘汰,因為大部分開發類似Eclipse這樣IDE的高手們已經把Ant集成到他們自己的IDE中了!

一、 Eclipse簡介

如果你是一個Java開發者,你會知道直接使用Java SDK進行開發有時非常不便。Java SDK沒有提供現成的import語句,忘記了變量聲明,漏掉了分號,還有混淆的語法和文字輸入等一系列問題往往會導致Java命令行編譯器(javac)顯示大量的錯誤信息。

這些錯誤消息告訴你,javac知道錯誤之所在;既然這樣,那么,為什么不糾正這一問題而讓你繼續開發呢?很遺憾,javac無法解決這個問題。為此,你可以選用一種IDE,它能夠在你編譯之前捕獲錯誤并且提供建議方案。Java急需一種很好的IDE,而今天杰出的Java IDE就是Eclipse。你可以從圖1看到Eclipse的外觀。


圖1.Eclipse界面

Eclipse是可自由下載的;但是值得注意的是,Eclipse背后有一個相當的優勢,這就是IBM的力量,據報導IBM為了開發它花費了四千萬美金。現在,它變成了一個開源項目,其大部分仍由IBM主持開發;另外,一個稱為eclipse.org的軟件協會也負責Eclipse的部分開發。

下載Eclipse

Eclipse可自由下載;你只需轉到http://www.eclipse.org/downloads,然后從該頁面上選擇一個可用的下載鏡像站點。之后,你會得到一串可用的下載不同類型版本的鏈接地址:

發行版本-該版本是為了一般使用。

穩定版本-這是相對于beta版本的。

集成版本-該版本由經過良好測試的組件構成,但是其操作可能還存在一些問題。

夜間版本-這是所有公開可用的Eclipse版本的主要內容的試驗樣品。它們是由Eclipse小組在夜間所開發,因此沒有保障會運行良好。

再下來,選擇適合你的操作系統的版本,然后下載Eclipse。Eclipse的安裝很容易;只需相應于你的操作系統版本進行解壓即可。然后,你得到一個可執行文件Eclipse.exe,運行它即可啟動Eclipse。在你第一次運行Eclipse時,你會看到一個歡迎頁面。之后,你可以點擊適當的鏈接來取得Eclipse的概述或教程。

二、 創建Eclipse工程

如果你已經安裝了Eclipse,那么你可以直接存取Ant/Eclipse接口且不需要作任何其它操作。在Eclipse中的開發是基于工程的。下面,我將創建一個新工程來說明怎樣從Eclipse中調用Ant。為了創建一個新工程,選擇"File→New→Project",于是打開"New Project"對話框,選擇Java Project項目并點擊Next。

然后,輸入工程名AntExample,并點擊Finish。

于是我們就創建了一個新工程;你可以看到AntExample工程出現在Eclipse的Package Explorer的底部。

到目前為止,這個工程是空的。為了添加Java代碼,從Package Explorer中選擇AntExample工程并且選擇"File→New→Class"以打開"New Java Class"對話框。然后,填寫包名為org.antbook,新類的名字為AntClass,并且選擇標記有public static void main(String[]args)的復選框以使得Eclipse創建一個main方法。最后,點擊Finish按鈕。

以上步驟將創建一個代碼文件AntClass.java,你會在圖2中部的Eclipse編輯器中看到這個文件,它具有一個完成后的main()方法。


圖2.一個新的Java類

添加下面一行代碼(加粗部分),以便讓該類做一些事情:

public static void main(String args[]){
System.out.println("No worries.");
}

然后,點擊工具欄中的Save圖標保存AntClass.java,并選擇"Run→Run As→Java Application"。最后,你會在Eclipse底部的Console選項卡中看到這部分代碼的輸出結果。

三、 在Eclipse中編寫Ant Build文件

為了在Eclipse中創建一個Ant build文件,右擊在Package Explorer中的AntExample工程并且選擇"New→File"。在"File Name"框中,輸入build.xml,并且點擊Finish,于是把這個新文件添加到AntExample工程中。為了把這個工程的輸出打包,需要在這個build文件中輸入下面的XML:

<?xml version="1.0" ?>
<project default="main">
<target name="main" depends="compile, compress" description="Main target">
<echo>
Building the .jar file.
</echo>
</target>
<target name="compile" description="Compilation target">
<javac srcdir="org/antbook"/>
</target>
<target name="compress" description="Compression target">
<jar jarfile="Project.jar" basedir="org/antbook" includes="*.class" />
</target>
</project>

在輸入這部分XML以后,保存這個新的build文件。Eclipse對于Ant的支持是明顯的;你會看到build.xml出現在Package Explorer的左邊并顯示一個Ant圖標,而且在build文件中的XML聲明部分以某種顏色點亮,屬性值以第二種顏色點亮,而Ant關鍵字則以第三種顏色點亮,如圖3所示。這個build文件的目標顯示于右邊的Outline視圖中。


圖3.在Eclipse中的Ant build文件

顯然,Support for Ant是Eclipse的代碼助手(提示:如果你關閉build.xml,你可以在Eclipse Ant編輯器中再次打開它;只需在Package Explorer中雙擊它即可。這與Eclipse的前一個版本不同(前一個版本沒有默認的Ant編輯器,你必須采取其它方式打開Ant build文件才行。稱作內容助手)),從Eclipse 3.0開始它被添加到Ant build文件中。當你針對Ant元素或屬性輸入部分文本時,你可以按下Ctrl+Space組合鍵來打開代碼助手,它將列出你接下來可能要輸入的內容,如圖4所示。


圖4.在Eclipse中使用代碼助手

提示 如果你輸入一個$并使用代碼助手,Eclipse的Ant編輯器將列出所有它所了解的Ant屬性名。

Eclipse 3.0能夠捕獲Ant build文件中的語法錯誤。例如,如果以</targe>結束一個目標,而不是用</target>標簽,那么這會立即被Eclipse Ant編輯器所捕獲,如圖5所示。如果你讓鼠標光標駐留于問題行左邊的圓圈X圖標上,你將看到Eclipse對于這個問題的解釋:"Expected `</target>' to terminate element starting on line 3."僅僅這種語法檢查和更正能力就值得把Ant納入到Eclipse IDE中。


圖5.處理語法錯誤

提示 :你可以使用Ant編輯器的上下文菜單中的Format命令(Ctrl-Shift-F)或選擇"Edit→Format"來重新格式化一個Ant build文件。

想看一個屬性值嗎?可以把鼠標移動到它上面,然后它的值就會出現在一個工具提示小窗中。

提示 :在一些情形下,Eclipse能夠為你生成Ant腳本。例如,如果你在創建一個Eclipse插件(它能夠實現用你自己的視圖和編輯器來擴展Eclipse),那么你可以使用一個名為plugin.xml的插件聲明文件。如果你右單擊這個聲明文件并且選擇"Create ant Build File"項,Eclipse將為你創建一個build文件。如果你選擇"Project→Generate Javadoc",那么Javadoc向導將創建一個運行javadoc工具的Ant build文件,你可以據需要編輯它。

四、 運行Ant Build文件

你可以使用兩個選項來從Eclipse內部運行這些build文件。例如,你可以右單擊Package Explorer中的build.xml文件并選擇"Run→Ant Build"。這樣可以啟動Ant并且把結果顯示在Eclipse的Console視圖中。

提示:Eclipse 3.0用一個獨立的JVM運行Ant,這樣以來解決了過去常常給IDE帶來的許多問題。

如果你在命令行上運行該build文件的話,其輸出結果將會與在Console視圖中的輸出一樣:

Buildfile: D:eclipse3eclipseworkspaceAntExampleuild.xml
compile:
[javac] Compiling 1 source file
compress:
[jar] Building jar: D:eclipse3eclipseworkspaceAntExampleProject.jar
main:
[echo] Building the .jar file.
BUILD SUCCESSFUL
Total time: 2 seconds

如果存在問題,你可以觀察在Console視圖中的Ant的輸出。Eclipse將在Problems視圖中給出一篇摘要,你可以點擊Eclipse底部的Problems選項卡來看到這篇摘要內容。

運行build文件的另外一個選項是右單擊Package Explorer中的build.xml并且選擇"Run→Ant Build..."(注,這里有個省略號)。這樣會打開如圖6所示的Ant啟動配置對話框,該Ant啟動配置是特定于當前工程的。


圖6.選擇一種Ant目標

缺省情況下,這個對話框自動選擇Targets選項卡,并顯示一串build.xml文件中的目標。缺省目標被選中;你可以點擊Run按鈕來運行該目標,或選擇其它目標來運行。如果你選中缺省的目錄并點擊Run,那么你將看到如前面的Console視圖中相同的結果。

你可以設置目標的執行順序,之后你會在頁面底部的Target執行順序框中看到這一順序(你選擇項目的順序正是它們被執行的順序)。Ant還會運行每一個目標的依賴性;但是,你必須小心以防你的修改有可能弄糟整個構建順序。

五、 選擇Build文件并把參數傳遞到Ant

你可以在Eclipse環境下使用與命令行一樣多的Ant功能。例如,為了把參數傳遞給Ant,可以在Package Explorer中右擊build.xml并且選擇"Run→ Ant Build..."來打開Ant啟動配置。然后,點擊顯示在圖7中的Main選項卡即可以設置你想使用的build文件,構建工程所依賴的基目錄等,并且你可以把參數傳遞到Ant。


圖7.設置要傳遞到Ant的build文件和參數

提示:在該對話框底部的Capture輸出復選框指示是否你想要把Ant輸出捕獲到Eclipse Console視圖中(缺省情況下就是如此)。
作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗