[eclipe]이클립스 톰켓 서버 시작시 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. 오류 해결하기
1. java.lang.ClassNotFoundException: sun.misc.GC 오류
이클립스에서 톰켓 서버를 시작할 때 아래와 같은 오류가 발생하는 경우 있어요.
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:433) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:586) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:375) at org.apache.catalina.core.JreMemoryLeakPreventionListener.lifecycleEvent(JreMemoryLeakPreventionListener.java:350) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:388) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:101) at org.apache.catalina.startup.Catalina.load(Catalina.java:643) at org.apache.catalina.startup.Catalina.load(Catalina.java:668) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:567) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:253) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:427) |
2. 이클립스 개발 환경
OS : 윈도우 10 자바 버전 : 1.8.0_201-1ojdkbuild apache-tomcat : 7.0.82 |
프로젝트 최상위 폴더 선택 후 > 마우스 우클릭 > Properties( Alt + Enter) 선택 > Java Build Path 선택
3. 원인
오류가 발생한 원인은 자바 버전과 톰캣서버 버전 문제입니다.
4. 해결방법
Tomcat 8이고 자바 11을 사용중일때 해결방법
(sun.misc.GC 는 java 9에서 제외)
tomcat 8에서 tomcat 9 로 버전을 올리거나 또는 자바 11 에서 자바 8로 다운그레이드 합니다.
Tomcat 7.0.82 이고 JDK 9.0.1을 사용중일 때 해결방법
JDK 8로 다운그레이드 하면 해결됩니다.
[관련정보]
https://tomcat.apache.org/tomcat-8.5-doc/config/listeners.html