2013-02-08 219 views
0

我正在使用定義一些通用接口的Java包。我想在一個單獨的項目中使用Groovy類實現這些接口。 Groovy編譯器扼制並報告我沒有實現接口。 Groovy代碼的Java等價物正常工作。Groovy無法實現使用繼承和泛型的Java接口

我接受Groovy編譯器不支持我想要做的事情,所以我會找到另一種方式,但我仍然想知道它爲什麼失敗。

我有這表明在Github上https://github.com/gilday/groovy-java-generics

+0

什麼版本的groovy?什麼是實際的例外? – 2013-02-08 16:14:43

+0

Groovy 2.0.6(在pom中)。編譯器說:「在非抽象類中不能有抽象方法,類org.ozoneplatform.example。 UserRepositoryImpl'必須聲明爲抽象或方法java.lang.Object getById(java.lang.Object)'必須被執行「。 – jdgilday 2013-02-08 16:24:50

+0

編譯器說我的接口是「java.lang.Object getById(java.lang.Object)」,但返回類型應該是「User」,參數類型應該是「Integer」。我懷疑Groovy可能會在本頁的實現說明中提到的某處刪除類型信息http://groovy.codehaus.org/Generics – jdgilday 2013-02-08 16:30:25

回答