DEV&OPS/Java
java.lang.ClassNotFoundException: sun.misc.GC 오류
ALEPH.GEM
2022. 12. 19. 13:57
java.lang.ClassNotFoundException: sun.misc.GC
이클립스에서 톰캣을 실행할 때 가끔 볼 수 있는 이 오류는 톰켓 버전과 JDK 버전이 맞지 않을 때 발생하는 오류입니다.
예를 들어 Tomcat 8을 사용중일 때 JDK가 11이 설치되었을 때 발생할 수 있습니다.
sun.misc.GC는 java9부터 제외되었기 때문입니다.
PC에 JDK8과 JDK11이 둘 다 설치되어 있다는 가정하에 이클립스에서 JDK 버전을 바꿔주는 방법으로 해결합니다.
이클립스 > Window > Preferences > Java > Installed JREs
위 화면에서 우측 Search... 버튼을 눌러 JDK8이 설치된 경로를 찾은 후에 설정을 체크하면 오류가 해결됩니다.
만약 프로젝트가 다양해서 다양한 톰켓 버전과 JDK를 같이 쓰는 경우는 아래와 같이 tomcat 별로 JRE를 지정해줄 수 있습니다.
아래 처럼 이클립스에 tomcat8(Server runtime environment)를 추가할 때 우측에 Add... 링크를 눌러서
하단의 JRE 부분을 기본 값인 Workbench default JRE 으로 되어 있으면
Installed JREs... 버튼을 눌러 JDK8 이 설치된 경로를 찾아서 JRE를 지정해줍니다.
그러면 default JRE가 11이더라도 JRE8 에서 tomcat8을 구동시킬 수 있습니다.
728x90