如何使用“覆盖”编译Vertx Groovy Verticle

时间:2013-11-28 08:39:30

标签: groovy vert.x

我正在尝试编译一个简单的Groovy Verticle,但是编译器会因为它不能使用“override”关键字而绊倒。关于如何使用“override”关键字编译Verticle的任何建议?

编译失败..因为它无法使用覆盖

class AppStarterGroovy extends Verticle {
    override def start() {
       ...
   }
}

>> Groovyc:意外令牌:覆盖

编译失败..由于Verticle的返回类型不同

class AppStarterGroovy extends Verticle {
    def start() {
       ...
   }
}

>> Groovyc:com.AppStarterGroovy中java.lang.Object start()的返回类型与org.vertx.java.platform.Verticle中的void start()不兼容 。在[8:5]

编译确定..

class AppStarterGroovy extends Verticle {
    void start() {
       ...
   }
}

1 个答案:

答案 0 :(得分:1)

是的,Groovy中没有override关键字,这是文档中的错误,应该删除。

但是如果这是Groovy,并且你正在扩展Verticle,那么你应该扩展org.vertx.groovy.platform.Verticle

https://github.com/vert-x/mod-lang-groovy/blob/master/src/main/groovy/org/vertx/groovy/platform/Verticle.groovy

其中有def start()