java.displaces를 클릭합니다.UnsupportedClassVersionError 지원되지 않는 major.minor 버전 51.0
어플리케이션을 작성하려고 하는데 오류가 발생해요.JDK 버전은 다음과 같습니다.
java version "1.6.0_30"
Java(TM) SE Runtime Environment (build 1.6.0_30-b12)
Java HotSpot(TM) Client VM (build 20.5-b03, mixed mode, sharing)
에러 로그는 다음과 같습니다.
Buildfile: build.xml
compile:
[echo] Compiling the service....
[echo] ...mkdir for classes first....
[echo] ...java classes next....
[echo] ...mkdir for generated code next....
[echo] ...generate stubs/skeletons next....
[wscompile] command line: wscompile -d /home/vivekray/program/MTrans/WEB-INF/classes -features:wsi,documentliteral -gen:server -keep -model /home/vivekray/program/MTrans/WEB-INF/model.gz -verbose -Xprintstacktrace /home/vivekray/program/MTrans/src/config.xml -classpath /home/vivekray/program/MTrans/WEB-INF:/home/vivekray/program/MTrans/WEB-INF/classes:/home/vivekray/program/MTrans/lib/log4j-1.2.16.jar:/home/vivekray/jwsdp-2.0/jwsdp-shared/lib/mail.jar:/home/vivekray/jwsdp-2.0/jwsdp-shared/lib/activation.jar:/home/vivekray/jwsdp-2.0/jaxp/lib/jaxp-api.jar:/home/vivekray/jwsdp-2.0/jaxp/lib/endorsed/dom.jar:/home/vivekray/jwsdp-2.0/jaxp/lib/endorsed/sax.jar:/home/vivekray/jwsdp-2.0/jaxp/lib/endorsed/xalan.jar:/home/vivekray/jwsdp-2.0/jaxp/lib/endorsed/xercesImpl.jar:/home/vivekray/jwsdp-2.0/jaxrpc/lib/jaxrpc-api.jar:/home/vivekray/jwsdp-2.0/jaxrpc/lib/jaxrpc-spi.jar:/home/vivekray/jwsdp-2.0/jaxrpc/lib/jaxrpc-impl.jar:/home/vivekray/jwsdp-2.0/saaj/lib/saaj-api.jar:/home/vivekray/jwsdp-2.0/saaj/lib/saaj-impl.jar:/home/vivekray/jwsdp-2.0/jwsdp-shared/lib/relaxngDatatype.jar:/home/vivekray/jwsdp-2.0/jwsdp-shared/lib/xsdlib.jar:/home/vivekray/jwsdp-2.0/jwsdp-shared/lib/jax-qname.jar:/home/vivekray/jwsdp-2.0/apache-ant/lib/ant.jar:/home/vivekray/jwsdp-2.0/fastinfoset/lib/FastInfoset.jar:/home/vivekray/Softwares/apache-tomcat-7.0.27/lib/servlet-api.jar
[wscompile] [creating model: mtransservice]
[wscompile] [creating service: Mtransservice]
BUILD FAILED
java.lang.UnsupportedClassVersionError: in/cdac/mobile/computing/mtrans/MtransService : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at org.apache.tools.ant.AntClassLoader.defineClassFromData(AntClassLoader.java:1146)
at org.apache.tools.ant.AntClassLoader.getClassFromStream(AntClassLoader.java:1324)
at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1388)
at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1341)
at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1088)
at java.lang.ClassLoader.loadClass(ClassLoader.java:295)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at com.sun.xml.rpc.processor.modeler.rmi.RmiUtils.getLoadableClassName(RmiUtils.java:78)
at com.sun.xml.rpc.processor.modeler.rmi.RmiUtils.getRealName(RmiUtils.java:54)
at com.sun.xml.rpc.processor.modeler.rmi.RmiModeler.modelPort(RmiModeler.java:676)
at com.sun.xml.rpc.processor.modeler.rmi.RmiModeler.buildLiteralModel(RmiModeler.java:603)
at com.sun.xml.rpc.processor.modeler.rmi.RmiModeler.buildModel(RmiModeler.java:457)
at com.sun.xml.rpc.processor.config.ModelInfo.buildModel(ModelInfo.java:88)
at com.sun.xml.rpc.processor.Processor.runModeler(Processor.java:63)
at com.sun.xml.rpc.tools.wscompile.CompileTool.run(CompileTool.java:714)
at com.sun.xml.rpc.util.ToolBase.run(ToolBase.java:43)
at com.sun.xml.rpc.tools.ant.Wscompile.execute(Wscompile.java:746)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
at org.apache.tools.ant.Main.runBuild(Main.java:758)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Total time: 1 second
이 사람들은 실패의 이유는 알려줬지만 해결 방법은 알려주지 않았습니다.이 문제는 시도 중인 JVM과 일치하는 jdk가 있는 경우에도 발생할 수 있습니다.
프로젝트 -> 속성 -> Java 컴파일러
프로젝트별 설정을 사용합니다.
그런 다음 컴파일러 호환성 수준을 1.6 또는 1.5로 선택하고 앱을 빌드 및 테스트합니다.
이제 괜찮을 거야
java.lang.UnsupportedClassVersionError
는 컴파일 시 JDK가 높아지고 런타임 시 JDK가 낮아지기 때문에 발생합니다.
버전 목록은 다음과 같습니다.
Java SE 9 = 53,
Java SE 8 = 52,
Java SE 7 = 51,
Java SE 6.0 = 50,
Java SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45
버전 51은 Java 7입니다.잘못된 JDK를 사용하고 있을 가능성이 있습니다.JAVA_HOME을 체크합니다.
여기서 설명한 바와 같이 [Binary Compatibility](바이너리 호환성)에서
즉, 특정 JDK에서 클래스를 컴파일했지만 이전 버전의 JDK에서 클래스를 실행하려고 합니다.
같은 문제가 발생했습니다.jdk 1.7을 컴파일 할 때 jre 1.4를 실행에 사용했습니다.
기존 PATH 설정 앞에 경로 이름 C:\glassfish3\jdk7\bin을 추가하여 환경변수 PATH를 설정했습니다.갱신된 값은 "C:\glassfish3\jdk7\bin;C:\Sun\SDK\bin"을 클릭합니다.업데이트 후 문제가 해결되었습니다.
컴파일/실행시에 올바른 SDK 를 사용하고 있는 것을 확인해 주세요.또, 소스/타겟 1.7
Maven을 사용하여 maven-compiler-plugin을 사용하여 실제 올바른 버전의 JDK javac.exe 명령을 명시적으로 호출합니다.Maven은 어떤 버전도 실행할 수 있기 때문입니다.또한 이전 Java vers용으로 컴파일할 때 클래스 버전 jar가 파손되고 클래스/메서드/속성이 누락되지 않는 javac의 정말 멍청한 long standing 버그를 검출할 수 있습니다.ions! 이 후반의 부품은 새로운 클래스, 메서드, 속성에 버전 속성을 추가하거나 별도의 컴파일러 버전 데이터에 추가함으로써 Java 1.5+에서 쉽게 수정될 수 있었습니다. Sun과 Oracle은 매우 어리석은 관리입니다.
언급URL : https://stackoverflow.com/questions/11239086/java-lang-unsupportedclassversionerror-unsupported-major-minor-version-51-0
'sourcecode' 카테고리의 다른 글
Vuex-ORM을 통한 양방향 데이터 바인딩 (0) | 2022.09.03 |
---|---|
2바이트 어레이를 비교하시겠습니까?(자바) (0) | 2022.09.03 |
vue-router에 의해 페이지가 다시 열리면 VueJS 후크 마운트()가 호출되지 않음 (0) | 2022.09.03 |
init-module 및 context-module (0) | 2022.09.03 |
SimpleDateFormat 및 로케일 기반 형식 문자열 (0) | 2022.09.03 |