用Eclipse Compiler編譯Java項目

http://skyanhf.blog.163.com/blog/static/1375845922010132233079/

用Eclipse Compiler編譯Java項目  

2010-02-03 14:23:30|  分類: tech |  標籤:ant  automation  eclipse  java   |字號 訂閱

 
我們經常使用ant來編譯我們的Eclipse項目,但有時ant中javac任務往往只能編譯一部分代碼。當代碼有編譯錯誤時,ant就停止編譯,不再繼續編譯剩下的代碼。這種方式給一些單元測試或者腳本類的工程帶來了麻煩,因爲這類工程中的錯誤往往只是一個腳本的語法問題,並不影響其他腳本。所以這類工程希望儘可能多的編譯全部代碼,而不是因爲一個編譯錯誤而停止。

但我們在Eclipse裏面編譯工程時,卻沒有這樣的問題,Eclipse將會把所有的代碼都編譯一遍,最後顯示所有的錯誤。這是因爲這時編譯的是Eclipse自己實現的Java編譯器。我們可以利用Eclipse自帶的編譯器,改進我們的ant腳本。

 
實現起來很簡單:
1. 在ant腳本中加入一行:
<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
如果javac任務中有這麼一行,則刪之:
compiler="javac1.5"

 
2. 下載ecj.jar,可以從http://download.eclipse.org/eclipse/downloads/下載,選擇eclipse的版本號,然後在"JDT Core Batch Compiler"這個類別中就可以下載對應版本的ecj.jar了。

 
3. 運行ant命令,加上如下參數:
ant -f build.xml -lib ecj.jar

 
4. 如果遇到OutOfMemory的錯誤在編譯過程中,則加上如下的環境變量:
set ANT_OPTS=-Xmx1024m
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章