2010年8月5日

讓Eclipse支援Grails專案開發

安裝EclipseGroovyGrails很簡單,分別只需要幾分鐘時間,下載&解壓縮之後就可以開始用。

但是要讓Eclipse變成Grails的整合開發環境,卻耗費我這兩天不少個小時,找資料、等待慢吞吞的下載,宣告失敗,再重來,陷入無窮迴圈。

Eclipse有很方便的套件管理工具 「Help / Install New Software」 ,但困難點在於要找到合適的 Update Sites設定。

目前的Eclipse最新版本為Eclipse 3.6,代號Helios。

依據Grails IDE Setup官方文件,Eclipse建議的支援工具為STS Integeration,也就是下載SpringSource Tool Suite(STS)。STS目前的最新發行版2.3.2,是以Eclipse為基礎,有Windows/Mac/Linux的32/64位元不同版本,只要填寫那個讓人厭倦的問卷後,就可以下載安裝。

但這個工具並不符合我平日的開發習慣,我喜歡為一個計畫打造專屬的開發工具,好讓計畫中的每項專案都能使用同一套工具,節省不同工具間往返切換浪費的時間及記憶體空間。

目前我以Eclipse 3.6為基礎,已經設定好SVN版本控制、Issue Tracking整合機制等,可以用它來同時開發GUI、Web及Scripting的不同類型專案,自動化地進行編譯、測試、加密、佈署等日常工作,未來也還要再加入資料庫管理、UML及專案進度控管的功能。對我來說,再多一套STS實在很麻煩。

要找到正確的Update Sites設定,好讓我的Eclipse支援STS所提供的Grails Support,這條看似簡單的路似乎走起來滿佈荊棘。

Groovy-Eclipse的安裝比較單純,只要加入以下的Update Site:
GroovyEclipse update site for Eclipse 3.6.n (Helios)
http://dist.codehaus.org/groovy/distributions/greclipse/snapshot/e3.6/

安裝 Groovy-Eclipse \ Groovy-Eclipse Feature 即可。

STS這邊麻煩多了,官網沒啥資料可參考,好不容易找到一份PDF文件,提供幾個Update Sites。

照著做就好了嗎?噢!不。

文件中說只要下載這個XML檔案,Import到Available Update Sites就可以,但用一般的瀏覽器似乎打不開 :X
Eclipse 3.6: http://dist.springsource.com/snapshot/TOOLS/composite/e3.6/bookmarks.xml 

再繼續往下看,似乎又看到了點希望。

自己手動新增這些Update Site總行了吧!
Eclipse 3.6:
• Helios
(http://download.eclipse.org/releases/helios)
• SpringSource Update Site for Eclipse 3.6 (Snapshot)
(http://dist.springsource.com/snapshot/TOOLS/update/e3.6)

• SpringSource Update Site for Eclipse 3.6 (Snapshot, Dependencies)
(http://dist.springsource.com/snapshot/TOOLS/composite/e3.6)

只是結果再度令人失望,被刪掉的紅字就是無法使用的位址。

再SpringSource Team Blog的一篇網誌中,提供另一個for Eclipse 3.6的Update Site,似乎看到答案了。
SpringSource Update Site for Eclipse 3.6 (Milestone)
http://dist.springsource.com/milestone/TOOLS/update/e3.6

這一次順利找到 Extensions / STS \ SpringSource Tool Suite Grails Support ,安裝時下載雖然慢了點但最後是完成了。

安裝後再建立新專案時,會多出 Groovy \ Grails Project 選項。

這個不太順利的過程,領悟了兩件事,(1) 學網連結SpringSource網站的速度慢到讓人吐血,還時常連不上,Grails的網站也是同樣情況;(2) Java的資源真是讓人難以捉摸,討論區和網誌似乎才是真正的官網。

沒有留言:

張貼留言

lyhcode by lyhcode
歡迎轉載,請務必註明出處!