akka错误:播放框架(2.3.3)和spark(1.0.2)

时间:2014-08-17 05:54:10

标签: playframework apache-spark

我正在尝试从Play框架连接到Spark。 得到以下Akka错误......

ERROR] [08/16/2014 17:12:05.249] [spark-akka.actor.default-dispatcher-3] [ActorSystem(spark)] Uncaught fatal error from thread [spark-akka.actor.default-dispatcher-3] shutting down ActorSystem [spark]
java.lang.AbstractMethodError
  at akka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$FaultHandling$$finishTerminate(FaultHandling.scala:210)
  at akka.actor.dungeon.FaultHandling$class.terminate(FaultHandling.scala:172)
  at akka.actor.ActorCell.terminate(ActorCell.scala:369)
  at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:462)
  at akka.actor.ActorCell.systemInvoke(ActorCell.scala:478)
  at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:263)
  at akka.dispatch.Mailbox.run(Mailbox.scala:219)
  at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:393)
  at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
  at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
  at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
  at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

完整的异常跟踪:https://gist.github.com/sujee/ff14fd602b76314e693d

此处的源代码:https://github.com/sujee/play-spark-test

我也发现这个帖子提到了Akka的兼容性 How to run Play 2.2.x with Akka 2.3.x?

有什么建议吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

(回答我自己的问题,以防其他人正在寻找解决方案)

这是由Akka库不匹配引起的。 Akka版本2.2和2.3不是二进制兼容的

spark(v1.0.0,v1.0.2)使用:akka 2.2.3-shaded-protobuf

Play框架使用以下内容 play v2.2.0,v2.2.2,v2.2.3使用akka 2.2.0 play v2.3.3使用akka 2.3.4

在我的情况下,我使用了Spark 1.0.2播放2.2.3