2015-12-21 50 views
0

Grails的版本:3.0.7Grails的地理編碼插件的依賴注入問題

Groovy的版本:2.4.4

JVM版本:1.8.0_51

我必須失去了一些東西很簡單在這裏。

我添加了一個Grails的插件到我的項目中定義的閱讀我:

compile 'org.grails.plugins:geocode:0.3' 

我可以看到相關的依賴已經從倉庫拉下來。

然而,想我的控制器內注入服務時使用:

def geocodingService 

我在執行時收到以下錯誤:

造成的:顯示java.lang.NullPointerException:不能調用方法用GetPoint( )空對象上

的代碼相關的行是:

Point location = geocodingService.getPoint('XXX XXX, UK') 

我的猜測是依賴注射失敗,但任何人都可以告訴我我犯的錯誤嗎?

+0

好吧,看起來插件甚至不在類路徑中,因爲插件中的類Point無法解析? –

回答

0

注:複製我的回答從另一個幾乎相同的問題...

OK,這似乎是下到我愣神試圖在一個Grails 3.X插件使用一個Grails 2.X插件。

在grails文檔中有很多步驟可以將插件從2.x升級到3.x。

我的直接解決方案是簡單地創建一個新服務,並將插件中的代碼複製到我的應用程序中。工作得很好。

的Grails 3.x的插件:https://bintray.com/grails/plugins 的Grails 2.x的插件:https://grails.org/plugins/

,除非你通過Grails網站導航這不是很明顯。如果你進來,例如從谷歌直接向插件頁面,兼容性顯示爲2.5.X>

然而,這實際上似乎意味着大於2.5.X但小於3.x的

希望這應該幫助任何人遇到這個問題。