使用 Vertx 3 和 Scala 部署 Verticle

Deploy Verticle with Vertx 3 and Scala

我正在尝试使用 Vertx 3 从 Scala 部署 Verticle,但由于 Scala 不是 Vertx 的扩展语言,我找不到一个很好的例子。

任何人都可以提供一些 github 示例吗?

问候。

尚无对 Scala 的官方 Vert.x 支持。 Jochen Mader (@codepitbull) 目前正在研究 vertx-lang-scala。尽管可以使用 Java API of Vert.x.

如果您对 Scala 有一定的了解,可以看看我们的项目 tableaux on GitHub. It's a project which is still under development but we already use it in production. I think the most important file to begin with are ScalaVerticle.scala and VertxExecutionContext.scala。对于后者,您可以使用 Scala 的 Future.

编辑: vertx-lang-scala 现在正式成为 Vert.x 3.4.0!

的一部分

它深埋在文档中,但关键是使用 "scala:" 前缀或使用辅助方法 ScalaVerticle.nameForVerticle

参见:http://vertx.io/docs/vertx-core/scala/#_accessing_the_vertx_instance_from_a_verticle

例如,如果您正在按照 http://vertx.io/blog/scala-is-here/ 中的示例进行操作,则可以在正文中添加主要对象:

object VertxMain extends App {
  val vertx = Vertx.vertx()
  val startFuture = vertx.deployVerticleFuture(ScalaVerticle.nameForVerticle[HttpVerticle])
  startFuture.onComplete{
    case Success(stat) => println(s"Successfully deployed verticle $stat")
    case Failure(ex) => println(s"Failed to deploy verticle $ex")
  }
}