Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 错误:java.lang.NoClassDefFoundError:akka/stream/Fusing$更新到2.5.2 akka版本后_Scala_Akka - Fatal编程技术网

Scala 错误:java.lang.NoClassDefFoundError:akka/stream/Fusing$更新到2.5.2 akka版本后

Scala 错误:java.lang.NoClassDefFoundError:akka/stream/Fusing$更新到2.5.2 akka版本后,scala,akka,Scala,Akka,我正在使用Akka开发一个小型微服务。包含在HttpServer中,如下所示: object HttpServer extends App { val config = ConfigFactory.load() implicit val system = ActorSystem(config.getString("server.actor-system")) implicit val materializer = ActorMaterializer() // needed

我正在使用Akka开发一个小型微服务。包含在HttpServer中,如下所示:

object HttpServer extends App {

  val config = ConfigFactory.load()

  implicit val system = ActorSystem(config.getString("server.actor-system"))
  implicit val materializer = ActorMaterializer()

  // needed for the future flatMap/onComplete in the end
  implicit val executionContext = system.dispatcher

  implicit val logger = Logging(system, getClass)

  implicit val employeeRouterActor = system.actorOf(Props[EmployeeRouterActor], name = "employeeRouterActor")

  val employeeRoutes = new EmployeeRoutes()
  val routes = employeeRoutes.route // ~ otherRoutes.route

  val host = config.getString("server.host")
  val port = config.getInt("server.port")
  val bindingFuture = Http().bindAndHandle(routes, host, port)

  logger.info(s"Server online at http://$host:$port/\nPress RETURN to stop...")
  StdIn.readLine() // let it run until user presses return
  logger.info(s"Server stopped :(")
  bindingFuture
    .flatMap(_.unbind()) // trigger unbinding from the port
    .onComplete(_ => system.terminate()) // and shutdown when done

}
在更新到最新的Akka版本后,从_2.12:2.4.17到_2.12:2.5.2,我在服务器启动时总是遇到以下错误:

objc[27272]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java (0x10983c4c0) and /Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/jre/lib/libinstrument.dylib (0x10a8914e0). One of the two will be used. Which one is undefined.
22:29:35.457 [my-system-akka.actor.default-dispatcher-2] INFO akka.event.slf4j.Slf4jLogger - Slf4jLogger started
Exception in thread "main" java.lang.NoClassDefFoundError: akka/stream/Fusing$
    at akka.http.scaladsl.HttpExt.fuseServerFlow(Http.scala:87)
    at akka.http.scaladsl.HttpExt.bindAndHandle(Http.scala:181)
    at server.HttpServer$.delayedEndpoint$server$HttpServer$1(HttpServer.scala:36)
    at server.HttpServer$delayedInit$body.apply(HttpServer.scala:17)
    at scala.Function0.apply$mcV$sp(Function0.scala:34)
    at scala.Function0.apply$mcV$sp$(Function0.scala:34)
    at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
    at scala.App.$anonfun$main$1$adapted(App.scala:76)
    at scala.collection.immutable.List.foreach(List.scala:389)
    at scala.App.main(App.scala:76)
    at scala.App.main$(App.scala:74)
    at server.HttpServer$.main(HttpServer.scala:17)
    at server.HttpServer.main(HttpServer.scala)
Caused by: java.lang.ClassNotFoundException: akka.stream.Fusing$
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 13 more

服务器在2.4.17中运行良好。有人在更新到2.5.2后出现此错误吗?

解决方案是将Akka Http也更新到最新版本,在本例中是10.0.7。

解决方案是将Akka Http也更新到最新版本,在本例中是10.0.7。

阅读官方文档,Akka显示Scala 2.11版本的最新版本。我使用的是Scala 2.12。降级到2.11我也会遇到这个错误。这似乎是akka http的问题。你也升级了吗?这就是问题所在。我只更新Akka,但忘了将Akka Http从10.0.4更新到10.0.7。谢谢。阅读官方文档,Akka展示了Scala 2.11版本的最新版本。我使用的是Scala 2.12。降级到2.11我也会遇到这个错误。这似乎是akka http的问题。你也升级了吗?这就是问题所在。我只更新Akka,但忘了将Akka Http从10.0.4更新到10.0.7。谢谢