akka.util.Unsafe fails with exception on JDK 11 when using modules and not loading `jdk.unsupported`
#25.640 geöffnet am 18.09.2018
Repository-Metriken
- Stars
- (13.277 Sterne)
- PR-Merge-Metriken
- (Durchschn. Merge 8T 19h) (10 gemergte PRs in 30 T)
Beschreibung
On JDK 11, akka.util.Unsafe fails with exception even before reaching the point where it would check for Java9+. The reason is that accessing sun.misc.Unsafe is no longer allowed.
Looking at the code in master this would happen with the latest version as well.
Exception in thread "main" java.lang.ExceptionInInitializerError at akka.dispatch.AbstractNodeQueue.(AbstractNodeQueue.java:181) at akka.actor.LightArrayRevolverScheduler.(LightArrayRevolverScheduler.scala:157) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) at akka.actor.ReflectiveDynamicAccess.$anonfun$createInstanceFor$1(ReflectiveDynamicAccess.scala:33) at scala.util.Try$.apply(Try.scala:209) at akka.actor.ReflectiveDynamicAccess.createInstanceFor(ReflectiveDynamicAccess.scala:28) at akka.actor.ReflectiveDynamicAccess.$anonfun$createInstanceFor$4(ReflectiveDynamicAccess.scala:39) at scala.util.Success.flatMap(Try.scala:247) at akka.actor.ReflectiveDynamicAccess.createInstanceFor(ReflectiveDynamicAccess.scala:39) at akka.actor.ActorSystemImpl.createScheduler(ActorSystem.scala:876) at akka.actor.ActorSystemImpl.(ActorSystem.scala:767) at akka.actor.ActorSystem$.apply(ActorSystem.scala:246) at akka.actor.ActorSystem$.apply(ActorSystem.scala:289) at akka.actor.ActorSystem$.apply(ActorSystem.scala:234) at akka.actor.ActorSystem$.create(ActorSystem.scala:169) at akka.actor.ActorSystem.create(ActorSystem.scala) at ... Caused by: java.lang.ExceptionInInitializerError at akka.util.Unsafe.(Unsafe.java:42) at akka.dispatch.AbstractNodeQueue.(AbstractNodeQueue.java:179) ... 20 more Caused by: java.lang.NoClassDefFoundError: sun/misc/Unsafe at akka.util.Unsafe.(Unsafe.java:22) ... 21 more Caused by: java.lang.ClassNotFoundException: sun.misc.Unsafe at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)