scala - 如何运行 Akka

标签 scala intellij-idea sbt akka

似乎没有必要在一个有 main 方法的类中运行 Akka How to run akka actors in IntelliJ IDEA .但是,这是我所拥有的:

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
  }
}

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

最佳答案

你可以这样写

import _root_.akka.Main
object Application extends App {
  Main.main(Array("somepackage.Supervisor"))
}

Supervisor actor 应该将 preStart 函数重写为 @cmbaxter建议。

然后在intellij中运行sbt console,写入run。

关于scala - 如何运行 Akka,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17894090/

相关文章:

scala - Spark数据框加入问题

spring - 即使使用 noarg 插件,也没有使用 Kotlin 的 JPA 实体的默认构造函数

java - Intellij 堆大小,初始堆大小设置为大于最大堆大小的值

java - 如何更改 Intellij IDEA 项目中所有文件中导入的命名空间

scala - 带有新sbt 0.13多项目定义的连字符子项目名称

scala - 如何在 sonatype 和 maven 中发布 scala 模块?

scala - Spark中的FP增长模型

java - 如何在我的用例中协调线程

scala - 值 % 不是 scala.xml.NodeSeq 的成员

sbt - Spark 1.2 SQL 代码不适用于 Spark 1.3 SQL 代码