Uncaught error from thread [application-akka.actor.default-dispatcher-3]: scala/collection/compat/Factory$, shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[application]
java.lang.NoClassDefFoundError: scala/collection/compat/Factory$
at reactivemongo.play.json.JSONSerializationPack$Decoder$.children(JSONSerializationPack.scala:243)
at reactivemongo.play.json.JSONSerializationPack$Decoder$.children(JSONSerializationPack.scala:219)
at reactivemongo.api.commands.UpdateCommand$.$anonfun$reader$1(UpdateCommand.scala:119)
at reactivemongo.api.commands.CommandCodecs$.$anonfun$dealingWithGenericCommandErrorsReader$1(CommandCodecs.scala:19)
at reactivemongo.play.json.JSONSerializationPack$.$anonfun$reader$1(JSONSerializationPack.scala:157)
at play.api.libs.json.Reads$$anon$6.reads(Reads.scala:195)
at reactivemongo.play.json.JSONSerializationPack$.deserialize(JSONSerializationPack.scala:59)
at reactivemongo.play.json.JSONSerializationPack$.deserialize(JSONSerializationPack.scala:33)
at reactivemongo.api.SerializationPack.readAndDeserialize(SerializationPack.scala:36)
at reactivemongo.api.SerializationPack.readAndDeserialize$(SerializationPack.scala:35)
at reactivemongo.play.json.JSONSerializationPack$.readAndDeserialize(JSONSerializationPack.scala:33)
at reactivemongo.api.SerializationPack.readAndDeserialize(SerializationPack.scala:40)
at reactivemongo.api.SerializationPack.readAndDeserialize$(SerializationPack.scala:38)
at reactivemongo.play.json.JSONSerializationPack$.readAndDeserialize(JSONSerializationPack.scala:33)
at reactivemongo.api.commands.Command$$anon$2.$anonfun$one$5(commands.scala:147)
at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:658)
at scala.util.Success.$anonfun$map$1(Try.scala:255)
at scala.util.Success.map(Try.scala:213)
at scala.concurrent.Future.$anonfun$map$1(Future.scala:292)
at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:33)
at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:33)
at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:64)
at akka.dispatch.BatchingExecutor$AbstractBatch.processBatch(BatchingExecutor.scala:55)
at akka.dispatch.BatchingExecutor$BlockableBatch.$anonfun$run$1(BatchingExecutor.scala:91)
at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
at scala.concurrent.BlockContext$.withBlockContext(BlockContext.scala:85)
at akka.dispatch.BatchingExecutor$BlockableBatch.run(BatchingExecutor.scala:91)
at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:40)
at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(ForkJoinExecutorConfigurator.scala:44)
at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: java.lang.ClassNotFoundException: scala.collection.compat.Factory$
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 33 moreCaused by: java.lang.ClassNotFoundException: scala.collection.compat.Factory$at java.net.URLClassLoader.findClass(URLClassLoader.java:382)at java.lang.ClassLoader.loadClass(ClassLoader.java:424)at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at reactivemongo.play.json.JSONSerializationPack$Decoder$.children(JSONSerializationPack.scala:243)at reactivemongo.play.json.JSONSerializationPack$Decoder$.children(JSONSerializationPack.scala:219)at reactivemongo.api.commands.UpdateCommand$.$anonfun$reader$1(UpdateCommand.scala:119)at reactivemongo.api.commands.CommandCodecs$.$anonfun$dealingWithGenericCommandErrorsReader$1(CommandCodecs.scala:19)at reactivemongo.play.json.JSONSerializationPack$.$anonfun$reader$1(JSONSerializationPack.scala:157)at play.api.libs.json.Reads$$anon$6.reads(Reads.scala:195)
"net.codingwell" %% "scala-guice" % "4.2.3",
"org.reactivemongo" %% "play2-reactivemongo" % "0.16.2-play27",
"com.typesafe.play" %% "play-json-joda" % "2.6.13",
"net.codingwell" %% "scala-guice" % "4.2.3",
"org.reactivemongo" %% "play2-reactivemongo" % "0.16.2-play26",
"com.typesafe.play" %% "play-json-joda" % "2.7.1",
No issue without qualification
// "org.reactivemongo" %% "reactivemongo-play-json" % "0.16.3-play27",
"org.reactivemongo" %% "reactivemongo-play-json" % "0.17.0-SNAPSHOT",
"org.reactivemongo" %% "play2-reactivemongo" % "0.16.3-play27",
"org.reactivemongo" %% "reactivemongo-akkastream" % "0.16.3",
"org.reactivemongo" %% "play2-reactivemongo" % "0.16.3-play27" exclude("org.reactivemongo", "reactivemongo-play-json_2.12"),
"org.reactivemongo" %% "reactivemongo-play-json" % "0.16.3-play26" exclude("org.reactivemongo", "play2-reactivemongo"),
Then the reactivemongo-play-json should not pull itself play-json dependency, as this transitive dependency is scoped as Provided. It rather use any version of play-json provided by the build, as long as it is API compatible, that's to say a 2.7.x .
"org.reactivemongo" %% "play2-reactivemongo" % "0.16.3-play27" excludeAll(
ExclusionRule(organization = "com.typesafe.play", "play-json"),
ExclusionRule(organization = "com.typesafe.play", "play-json_2.12")
),