3

我从这里收到上述错误消息:

implicit val askTimeout = Timeout(60 seconds)
val workerFuture = workerContext actorSelection(payload.classname) resolveOne()
val worker = Await.result(workerFuture, 10 seconds)
worker ask Landau(List("1", "2", "3"))

特别是从第二行..所做的导入是

import akka.actor._
import akka.util.Timeout
import akka.pattern.{ ask, pipe }
import scala.concurrent.duration._
import scala.concurrent.Await
import java.util.concurrent.TimeUnit

akka 版本是 2.2.1,scala 是 2.10.2,我使用 sbt 0.13 来构建它。我真的不明白出了什么问题,因为 resolveOne 肯定来自那个包。

编辑:我打印了类的所有方法

ActorSelection.getClass.getMethods.map(_.getName).foreach { p => println(p)}

这是结果:

apply
toScala
wait
wait
wait
equals
toString
hashCode
getClass
notify
notifyAll
4

1 回答 1

1

我遇到了同样的问题并更改了我的 Scala 和 Akka 版本,如下面的链接中所述。为简单起见,我将 build.sbt 的一部分带到这里:

scalaVersion := "2.10.4"

resolvers += "Akka Snapshot Repository" at "http://repo.akka.io/snapshots/"

libraryDependencies ++= Seq("com.typesafe.akka" %% "akka-actor" % "2.4-SNAPSHOT")

链接:http ://doc.akka.io/docs/akka/snapshot/intro/getting-started.html

于 2014-07-27T20:17:44.483 回答