我有以下代码:
@TypeChecked
class SomeClass {
def someMethod( BridgeEvent event ){
event.complete true // here comes the compile error
}
}
该行在日食中显示错误:
Groovy:[静态类型检查] - 对方法的引用不明确。无法选择[void io.vertx.groovy.ext.web.handler.sockjs.BridgeEvent#complete(java.lang.Boolean),void io.vertx.groovy.ext.web.handler.sockjs.BridgeEvent #complete(java .lang.Object)]
第一种方法来自BridgeEvent
类,第二种来自它的超类。
如果我删除@TypeChecked
代码工作正常。
我该如何解决问题?
更新:
我试过@ tim-yates'解决方案event.complete Boolean.TRUE
和编译错误消失,但complete(java.lang.Object)
方法正在执行与complete(boolean)
不同的操作。所以我需要调用后面的方法。
现在我重写了代码:
@TypeChecked
class SomeClass {
def someMethod( BridgeEvent event ){
complete event
}
@TypeChecked( SKIP )
private void complete( BridgeEvent event ){
event.complete true
}
}
它再次运作良好,但它的外观......