我正在使用定义一些通用接口的Java包。我想在一个单独的项目中使用Groovy类实现这些接口。 Groovy编译器扼制并报告我没有实现接口。 Groovy代码的Java等价物正常工作。Groovy无法实现使用继承和泛型的Java接口
我接受Groovy编译器不支持我想要做的事情,所以我会找到另一种方式,但我仍然想知道它为什么失败。
我有这表明在Github上https://github.com/gilday/groovy-java-generics
我正在使用定义一些通用接口的Java包。我想在一个单独的项目中使用Groovy类实现这些接口。 Groovy编译器扼制并报告我没有实现接口。 Groovy代码的Java等价物正常工作。Groovy无法实现使用继承和泛型的Java接口
我接受Groovy编译器不支持我想要做的事情,所以我会找到另一种方式,但我仍然想知道它为什么失败。
我有这表明在Github上https://github.com/gilday/groovy-java-generics
我不知道某些这一问题的例子Maven项目,但它可能是没有被正确生成对Groovy的Java存根。您可以尝试使用groovy-eclipse-compiler
代替。请看这里:
http://groovy.codehaus.org/Groovy-Eclipse+compiler+plugin+for+Maven
是的,这是有效的。谢谢! – jdgilday 2013-08-30 00:56:46
什么版本的groovy?什么是实际的例外? – 2013-02-08 16:14:43
Groovy 2.0.6(在pom中)。编译器说:“在非抽象类中不能有抽象方法,类org.ozoneplatform.example。 UserRepositoryImpl'必须声明为抽象或方法java.lang.Object getById(java.lang.Object)'必须被执行“。 – jdgilday 2013-02-08 16:24:50
编译器说我的接口是“java.lang.Object getById(java.lang.Object)”,但返回类型应该是“User”,参数类型应该是“Integer”。我怀疑Groovy可能会在本页的实现说明中提到的某处删除类型信息http://groovy.codehaus.org/Generics – jdgilday 2013-02-08 16:30:25