Java 1.7을 이미 설치한 후에 Java 1.6을 설치해야 합니까?

Java 1.7을 이미 설치한 후에 Java 1.6을 설치해야 합니까?

Java 1.7이 설치되어 있고 Java 1.6을 설치하려고 합니다.

새 위치를 가리키는 java_home 및 경로 변수를 업데이트하고 이러한 명령도 실행했습니다.

sudo update-alternatives --set java /usr/local/java/jdk1.6.0_45/bin/java
sudo update-alternatives --set javac /usr/local/java/jdk1.6.0_45/bin/javac

내 java -version은 java 1.6을 표시하지만 java class_name을 실행하면 다음 오류가 발생합니다.

Exception in thread "main" java.lang.UnsupportedClassVersionError: three : Unsupported major.minor version 51.0

sudo update-alternatives --config java 명령을 실행하면

 Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      auto mode
  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
  2            /usr/local/java/jdk1.6.0_45/                     1         manual mode
* 3            /usr/local/java/jdk1.6.0_45/bin/java             1         manual mode
  4            /usr/local/java/jre1.7.0_40/bin/java             1         manual mode

내가 무엇을 놓치고 있는지 말해 줄 수 있는 사람이 있나요?

답변1

버전 51.0 클래스 파일을 실행하려면 Java 7이 필요하므로 클래스를 다시 컴파일하거나 Java 7로 업그레이드해야 합니다.

Java에는 /etc/alternatives에 많은 링크가 있지만 update-java-alternatives이를 더 쉽게 유지 관리할 수 있도록 해주는 java-common 패키지에 java-common이라는 도구가 있습니다. 이렇게 하면 한 버전의 javac와 다른 버전의 java를 사용하지 않아도 됩니다.

관련 정보