인프런 커뮤니티 질문&답변

Angma님의 프로필 이미지
Angma

작성한 질문수

스프링 부트 - 핵심 원리와 활용

내장 톰캣4 - 빌드와 배포1

NoClassDefFoundError가 아닌 UnsupportedClassVersionError가 뜨는 경우 해결방법

작성

·

574

·

수정됨

0

NoClassDefFoundError가 아닌 UnsupportedClassVersionError가
발생하는 경우 java 버전이 하위 버전인 경우일 때 나타나는 것을 확인했습니다.

자바 17 버전으로 하셔야 강의처럼 NoClassDefFoundError가 나타납니다.

아래는 8, 11 버전에 대한 에러를 확인해서 공유드립니다ㅎㅎ

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: hello/embed/EmbedTomcatSpringMain has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:601)

위의 에러는 java8 버전일 때 나타나는 에러입니다.

Error: LinkageError occurred while loading main class hello.embed.EmbedTomcatSpringMain
        java.lang.UnsupportedClassVersionError: hello/embed/EmbedTomcatSpringMain has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0

위의 에러는 java11 버전일 때 나타나는 에러입니다.

 

프로젝트랑 환경변수가 java17로 되어 있어도 cmd나 터미널을 이용해서 자바버전을 확인하세요

제목 없음-1.png

답변 1

0

안녕하세요. Angma님, 공식 서포터즈 OMG입니다.
.

정보 공유 감사합니다 ^^
.
감사합니다.

Angma님의 프로필 이미지
Angma

작성한 질문수

질문하기