如何运行Akka

Ala*_*ano 1 scala intellij-idea sbt akka

似乎没有必要在其中具有main方法的类中能够运行Akka 如何在IntelliJ IDEA中运行akka actor。但是,这是我所拥有的:

object Application extends App {
  val system = ActorSystem()
  val supervisor = system.actorOf(Props[Supervisor])
  implicit val timeout = Timeout(100 seconds)

  import system.dispatcher

  system.scheduler.schedule(1 seconds, 600 seconds) {
    val future = supervisor ? Supervisor.Start
    val list = Await.result(future, timeout.duration).asInstanceOf[List[Int]]
    supervisor ! list
  }
}
Run Code Online (Sandbox Code Playgroud)

我知道我必须在配置中指定一个称为“ akka.Main”的主要方法。但是,尽管如此,我应将当前代码从何处移出object Application

bsm*_*smk 5

你可以写类似

import _root_.akka.Main
object Application extends App {
  Main.main(Array("somepackage.Supervisor"))
}
Run Code Online (Sandbox Code Playgroud)

和Supervisor actor应该已按照@cmbaxter建议覆盖了preStart函数。

然后在intellij中运行sbt控制台并编写运行。