web-dev-qa-db-fra.com

java.lang.ClassNotFoundException Sun.misc.GC

Version Java: 10.0.1 Tomcat: 8.0.36 Ubuntu: 18.04 (64 bits) Eclipse: Photon (64 bits)

Erreur: lorsque j'exécute le serveur Tomcat, j'ai trouvé l'erreur ci-dessous. S'il vous plaît, ne me dites pas de diminuer la version si possible, car j'aime utiliser les dernières technologies.

    SEVERE: Failed to trigger creation of the GC Daemon thread during Tomcat start to prevent possible memory leaks. This is expected on non-Sun JVMs.
Java.lang.ClassNotFoundException: Sun.misc.GC
at Java.base/Java.net.URLClassLoader.findClass(URLClassLoader.Java:466)
at Java.base/Java.lang.ClassLoader.loadClass(ClassLoader.Java:566)
at Java.base/Java.lang.ClassLoader.loadClass(ClassLoader.Java:499)
at Java.base/Java.lang.Class.forName0(Native Method)
at Java.base/Java.lang.Class.forName(Class.Java:291)
at org.Apache.catalina.core.JreMemoryLeakPreventionListener.lifecycleEvent(JreMemoryLeakPreventionListener.Java:286)
at org.Apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.Java:95)
at org.Apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.Java:90)
at org.Apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.Java:394)
at org.Apache.catalina.util.LifecycleBase.init(LifecycleBase.Java:99)
at org.Apache.catalina.startup.Catalina.load(Catalina.Java:580)
at org.Apache.catalina.startup.Catalina.load(Catalina.Java:603)
at Java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:62)
at Java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:43)
at Java.base/Java.lang.reflect.Method.invoke(Method.Java:564)
at org.Apache.catalina.startup.Bootstrap.load(Bootstrap.Java:310)
at org.Apache.catalina.startup.Bootstrap.main(Bootstrap.Java:484)
11
user9373603

Références Tomcat 8 Sun.misc.GC, qui a été supprimé dans Java 9 - d'où vous obtenez l'erreur.

S'il vous plaît, ne me dites pas de diminuer la version si possible, car j'aime utiliser les dernières technologies.

Je vais vous dire de faire le contraire alors! Vous devez utiliser Tomcat 9, pas Tomcat 8. L'erreur devrait alors disparaître.

12
Michael Berry