我有一個項目,其中包含一個Groovy通用代碼模塊和一個單獨的Grails Web應用程序模塊。我從Eclipse到IntelliJ 12.1.2做了一些改進,這是一個巨大的進步。似乎一切都變得更好了 - 例如,當我在Groovy項目中向類中添加字段時,我立即在Grails項目的IntelliSense中看到它們可用。另外,另一個很大的好處是,我終於能夠調試在IDE中工作的Grails應用程序(Hooray,因爲無需在任何地方使用print語句來清理代碼!)。使用IntelliJ 12.1.2和Maven項目時Grails應用程序不同步
但是,我遇到的問題是,當我執行Run-> Run'Grails:FooProj'或Run-> Debug'Grails:FooProj'時運行的代碼似乎已經失效與保存的代碼同步。例如,我可以向代碼添加一條日誌語句,然後嘗試運行它,但它不顯示。這就像它使用了jar/wars的緩存版本。
有一點值得注意的是,對於我的運行/調試配置,我不得不檢查Maven Settings的「Work offline」框,以便它不會出現在連接點以拉下罐子。我希望它使用我對代碼做出的本地更改,而不是發佈的內容。
如何讓IntelliJ使用我在調試web-app時所做的本地代碼更改?我可以去控制檯並在通用代碼項目上執行mvn clean install
,然後在IntelliJ中正常工作,但是我不想在每次我想調試我的應用程序時都下載到控制檯。
我們正在使用Grails 2.1。我將pom添加到了'BuildConfig'中,但它似乎沒有提到我的更改。還有什麼我需要做的嗎? 「出路」方法看起來有些有前途,但我寧願不必每次都進行mvn安裝,因爲依賴代碼並不總是變化。另外,我們還有一些我們需要跳過的集成測試,所以通常我們會執行'mvn clean install -D skipITs',但我不明白我在「出路」中如何傳遞該參數。 – FuriousGeorge 2013-05-01 21:30:19