すでに 1.7 がインストールされているのに Java 1.6 をインストールしますか?

すでに 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-alternativesjava-common パッケージには、それらすべてを管理するのを容易にするツールがあります。この方法により、javac の 1 つのバージョンと java の別のバージョンを使用する必要がなくなります。

関連情報