문제

내 프로젝트는 1.4.2 JDK에서 빌드됩니다. 이제는 제 3 자 항아리와 상호 작용할 것입니다. JDK 1.6

클라이언트 클래스를 사용하는 동안 호환성 문제가 발생합니다. JDK를 1.6으로 업그레이드하거나 1.4.2

에서 제 3 자 항아리를 재구성하지 않고도 해결할 수 있습니까?

도움이 되었습니까?

해결책

이전 JDK 1.4에서는 JDK 1.6에서 컴파일 된 클래스를 실행할 수 없으므로 java.lang.UnsupportedClassVersionError 예외가 발생합니다.이것은 Java가 호환되지 않기 때문에 역 호환 가능합니다 (사양 ).

JDK 1.4.2.19 및 JDK 1.6.0.23을 설치하고 샘플 응용 프로그램을 썼습니다.

public class HelloWorld {
    public static void main(String[] args) {
            System.out.println("Hello world!");
    }
}
.

JDK 1.6.0.23 :

 ../1.6.0.23/bin/javac HelloWorld.java
.

JDK 1.4.2.19로 실행 :

../1.4.2.19/bin/java HelloWorld
.

출력 :

Exception in thread "main" java.lang.UnsupportedClassVersionError: HelloWorld
(Unsupported major.minor version 50.0)
      at java.lang.ClassLoader.defineClass0(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
        ...
.



솔루션 : 1.6 (및 1.5)에 도입 된 방법을 호출하지 않으면 JDK 1.4로 제 3 자 응용 프로그램을 재구성하려고 시도 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top