【问题标题】:Akka ActorSystem creation issueAkka ActorSystem 创建问题
【发布时间】:2012-03-08 06:25:42
【问题描述】:

我们正在使用 Akka 2.0 RC1 并在 ActorSystem 创建时收到异常消息:akka.actor.LocalActorRefProvider 和堆栈跟踪如下:

java.net.URLClassLoader$1.run(URLClassLoader.java:366)
java.net.URLClassLoader$1.run(URLClassLoader.java:355)
java.security.AccessController.doPrivileged(AccessController.java:279)
java.security.AccessController.doPrivileged(AccessController.java:520)
java.net.URLClassLoader.findClass(URLClassLoader.java:354)
java.lang.ClassLoader.loadClass(ClassLoader.java:450)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
java.lang.ClassLoader.loadClass(ClassLoader.java:385)
akka.actor.ReflectiveDynamicAccess.getClassFor(DynamicAccess.scala:94)
akka.actor.ReflectiveDynamicAccess.createInstanceFor(DynamicAccess.scala:102)
akka.actor.ActorSystemImpl.<init>(ActorSystem.scala:439)
akka.actor.ActorSystem$.apply(ActorSystem.scala:41)
akka.actor.ActorSystem$.apply(ActorSystem.scala:51)
kozo.excel.impl.ConnectClient.<init>(ConnectClient.scala:26)

异常发生在这一行:

system = ActorSystem("FunctionClient")

有什么想法或想法吗?我们确实确认 LocalActorRefProvider 在类路径中。

【问题讨论】:

  • 您遇到的异常是什么?你能显示 application.conf 吗?
  • 此进程没有 application.conf。

标签: java scala akka


【解决方案1】:

如果您确实将实际的异常消息放在您的问题中会有所帮助,但我会在这里勉强假设这是illustrated in this thread 的错误消息:

java.lang.ClassCastException: interface akka.actor.ActorRefProvider is
not assignable from class akka.actor.LocalActorRefProvider 

当我按照您描述的方式通过 sbt 在控制台下运行它时,它对我来说也运行良好。但是,如果我使用以下方式运行它:

scala-类路径

并导入并执行,我确实得到了我提到的错误。

原因:

Akka 使用来自创建ActorSystem 的线程的上下文类加载器,并且由于每一行都在它自己的加载器上,如果你不使用它就会有问题。

建议:

repl 中的每一行都在一个单独的线程中运行。
如果您添加 -Yrepl-sync 选项,它应该可以正常工作

【讨论】:

  • 我使用异常的 getStackTraceString 方法来提取堆栈跟踪,这包括在上面。此外 getMessage 似乎很接近,但与您的不匹配。我们正在尝试修复应用程序上的日志记录,这样我就不必使用 getStackTraceString 等技巧了。我在哪里传递 -Yrepl -sync 选项?
  • @Roy:到你的 scala (repl) 会话,或者到你的 sbt 会话:stackoverflow.com/questions/7615318/…
猜你喜欢
  • 2014-02-21
  • 2021-01-27
  • 2017-03-16
  • 2013-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多