最近釋出的 STS 2.3.3 M2 引入了我們對 Eclipse 的 Grails 支援的一系列增強功能。在本文中,我將討論如果您嘗試它(在此獲取:SpringSource Tool Suite),您可以期待找到什麼。
Groovy-Eclipse
Grails 工具實際上基於並擴充套件了 Groovy-Eclipse 支援,該支援由 SpringSource 的同一團隊開發。今年早些時候,Groovy-Eclipse 工具在
Eclipse-Con 2010 上贏得了“最佳開源開發者生產力工具”獎。您可以在此閱讀有關最近 Groovy-Eclipse 2.0.2 版本中最新增強功能的更多資訊:
新特性與注意事項。我在這裡不打算重點介紹 Groovy-Eclipse,但該版本的一些亮點包括
- 重構支援:現在支援提取方法、提取常量、提取區域性變數
- 程式碼格式化和縮排方面的改進
現在,開始介紹 Grails!
獲取新透檢視
現在有一個新的 Grails 透檢視,可以更好地組織我們新增到 STS 中的檢視和小部件。您可以透過正常方式開啟透檢視(
視窗>開啟透檢視>Grails)。在新透檢視中,首先要注意的是開啟的是 Eclipse 專案資源管理器,而不是包資源管理器。專案資源管理器使用自定義內容提供程式,該提供程式顯示了一個 Grails 專案檢視,對於 Grails 開發者來說應該更熟悉
新的標籤和圖示已到位,用於表示類似實體的組:領域物件、控制器、檢視等。然而,最大的變化是新的 plugins 資料夾。以前,在處理 Grails 專案時,外掛依賴項在 UI 中很難看到,它們隱藏在類路徑容器和一些 Eclipse 連結的原始檔夾條目中。現在在專案資源管理器中,應用程式的依賴項更加清晰明瞭。
此外,與外掛相關的是,我們有了一個新的 Grails 外掛專案嚮導。這與 Grails 專案嚮導非常相似,但它不執行create-app,而是會執行create-plugin命令。有了這個新嚮導以及我們對本地(inplace)外掛的新支援,遵循外掛導向架構開發應用程式變得容易得多。
這裡是一個使用本地/inplace 外掛配置的示例
在該截圖您可以看到兩個 Eclipse 專案。主要的 Grails 應用程式 'MyFirstGrailsApp' 和一個外掛專案 'MyFirstGrailsPlugin'。透過編輯主應用程式中的 BuildConfig.groovy 檔案,已經表達了對外掛專案的依賴。
grails.plugin.location.MyFirstGrailsPlugin="../MyFirstGrailsPlugin"
指定該依賴項並在應用程式上執行 'Refresh Dependencies' 後,'plugins' 資料夾已更新(參見上面的截圖),其中包含我的新依賴項的新條目以及一種不同型別的圖示,表明它是不同型別的外掛依賴項。
命令列
為了讓使用者更高效,命令列提示已得到增強。它現在允許選擇專案,並且可以固定到位(這樣就不會意外關閉),但最重要的是它現在有了歷史記錄功能。歷史記錄使您能夠快速重新執行相同的命令或執行類似的命令。要訪問提示,您可以使用相同的“爪形”組合鍵(
Alt+Shift+Ctrl+G在我的 Windows 機器上),或者如果您的手不適合那樣按,您可以使用 Grails 透檢視工具欄上的新 Grails 圖示來啟動它。Grails 圖示旁邊的下拉選單提供了另一種訪問命令歷史記錄的途徑,顯示了命令及其執行的專案
選擇下拉歷史記錄中的任何條目都將開啟預填充該命令的提示符,可以在執行前進行編輯或直接重新執行。如果提示符已開啟,則訪問歷史記錄的另一種途徑是隻需按下向上箭頭鍵
為了加快在應用程式中的導航速度,STS 現在包含了許多針對 Grails 專案的新鍵盤快捷鍵。當在控制器、服務、標籤庫或領域類中時,您可以使用 Alt+G,然後按 D、C、S、T 中的一個鍵,即可跳轉到編輯器中相關的領域類/控制器/服務/標籤庫。也可以透過點選工具欄上的新圖示進行跳轉:

管理外掛
為了更容易組織專案使用的外掛,我們有一個新的 Grails 外掛管理器。您無需記住想要外掛的名稱,而是可以開啟管理器(透過上下文選單
右鍵點選>Grails 工具>Grails 外掛管理器...,或透過組合鍵
Alt+G,M),並瀏覽可用外掛
外掛管理器使您能夠
它還提供詳細說明以及任何可用的文件連結。
可用外掛列表已快取,但您可以按下重新整理以確保您使用的是最新列表。預設情況下,管理器會顯示所有可用外掛,但向下滾動時,您會看到已安裝的外掛(已安裝的外掛旁邊有綠色對勾)。重要的是,如果任何已安裝外掛有更新發布,UI 會向您指示,您可以根據需要進行更新(藍色向上箭頭圖標表示有可用更新)。由於安裝/解除安裝外掛不是即時的操作(Grails 需要幾分鐘才能實際完成),當您與 UI 互動並標記要安裝/更新等的外掛時,您基本上是在排程一系列 Grails 命令執行。您請求的更改實際上要等到您按下“確定”按鈕關閉管理器後才會執行。如果在任何時候您認為操作有誤,您可以取消管理器(或重置管理器),您的專案將恢復到原始狀態。
GSPs
除了許多小修復之外,透過增加標籤庫的程式碼輔助功能,GSP 編輯得到了改進
在這裡您可以看到我有一個新的標籤庫,叫做
TextInserter定義了一個標籤
alphabet,在 GSP 編輯器中我可以對該標籤進行程式碼完成。(遵循當前 JSP 編輯的模型,程式碼輔助
Ctrl+Space必須在鍵入之前執行)。
動態查詢器
這並沒有真正適合上面的部分,但這是一個很好的改進。Groovy 編輯器現在將識別動態查詢器的用法並在程式碼輔助中提供它們
在這裡您可以看到,對於我的
Song物件(它只有標題和時長),任何使用無效查詢器的嘗試都會在編輯器中以下劃線標記,並且程式碼輔助會提供有效的選擇。
就是這樣!STS M2 的變化相當多 - 現在去獲取一份並試試看:SpringSource Tool Suite
歡迎任何反饋。除錯方面的改進是我們近期將關注的重點,但如果您希望提出新的需求或對現有問題發表評論,請參閱 STS 問題跟蹤器。