有沒有什麼方法可以將akka 2.3和play 2.2結合?現在,我在運行此類應用程序時遇到AbstractMethodError。我需要將它們放在一個應用程序中,因爲Akka 2.3帶有非常有用的akka持久性模塊,非常可靠(與其前身相反),這種可靠性對我而言非常重要。我試過編譯來源戲2.2.2和不斷變化的阿卡依賴有2.3,但我仍然得到同樣的錯誤:如何使用Akka 2.3.x運行Play 2.2.x?
[ERROR] [04/01/2014 09:42:26.105] [play-akka.actor.default-dispatcher-6] [ActorSystem(play)] Uncaught error from thread [play-akka.actor.default-dispatcher-6] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled
java.lang.AbstractMethodError
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)
at akka.actor.ActorCell.invoke(ActorCell.scala:487)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238)
at akka.dispatch.Mailbox.run(Mailbox.scala:220)
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)
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)
「非常可靠的akka持久性模塊(反對它的前身)」......我很好奇什麼是不可靠的。 –
就我所瞭解的兩個提到的功能而言,akka持久性將嘗試處理消息,直到它從日誌中刪除。例如,當jvm在處理消息期間崩潰時,akka持久性將再次處理該消息,如果它未從日記中刪除,而持久郵箱不會。 – user2963977
不,耐用郵箱的使用嚴格不如Akka持久性,因爲後者解決了持續狀態的問題,而前者只會盡最大努力將郵件發送給收件人(郵箱中沒有安全的手動轉移,例)。 –