web-dev-qa-db-ja.com

スレッド「メイン」の例外Java.lang.UnsupportedClassVersionError:a(サポートされていないmajor.minorバージョン51.0)

可能性のある複製:
サポートされていないメジャー.minorバージョン51.

JDK7をインストールしました。単純なHello Wordプログラムがコンパイルされますが、これを実行すると次の例外が発生しました。

Exception in thread "main" Java.lang.UnsupportedClassVersionError: a (Unsupported major.minor version 51.0)
    at Java.lang.ClassLoader.defineClass0(Native Method)
    at Java.lang.ClassLoader.defineClass(Unknown Source)
    at Java.security.SecureClassLoader.defineClass(Unknown Source)
    at Java.net.URLClassLoader.defineClass(Unknown Source)
    at Java.net.URLClassLoader.access$100(Unknown Source)
    at Java.net.URLClassLoader$1.run(Unknown Source)
    at Java.security.AccessController.doPrivileged(Native Method)
    at Java.net.URLClassLoader.findClass(Unknown Source)
    at Java.lang.ClassLoader.loadClass(Unknown Source)
    at Sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at Java.lang.ClassLoader.loadClass(Unknown Source)
    at Java.lang.ClassLoader.loadClassInternal(Unknown Source)

コマンドプロンプトでJava -versionを確認しましたが、Javaバージョン1.4.2_03が表示されますが、Java.comから新しいJavaバージョンをインストールしようとすると、Java 7バージョン。

86
Adnan

PATH設定の内容をメモ帳にコピーし、1.4.2の場所が7の前にあるかどうかを確認します。その場合、PATH設定で1.4.2へのパスを削除して保存します。

「環境変数」を保存して適用したら、cmd行を閉じて再度開きます。 XPでは、パスは既に実行中のプログラムに反映されません。

36
arunmur

コマンドラインからSudo update-alternatives --config Javaを試して、使用するJREのバージョンを設定します。これで修正されるはずです。

72
johnzachary

Eclipseを使用していると仮定すると、MAC上で次のことができます。

  1. Eclipse.appを起動します
  2. Eclipse -> Preferencesを選択します
  3. Java -> Installed JREsを選択します
  4. Add...ボタンをクリックします
  5. JREタイプとしてMacOS X VMを選択します。次へを押します。
  6. 「JRE Home:」フィールドに、/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Homeと入力します
  7. 「JREシステムライブラリ」というタイトルのリストにシステムライブラリが表示されます。
  8. JREに名前を付けます。推奨される名前はJDK 1.7です。完了をクリックします。
  9. 作成したJREエントリの横にあるチェックボックスをオンにします。これにより、Eclipseはそれをすべての新しいJavaプロジェクトのデフォルトJREとして使用します。 OKをクリックします。
  10. 次に、新しいプロジェクトを作成します。この確認のために、メニューからFile -> New -> Java Projectを選択します。
  11. 表示されるダイアログで、プロジェクトの新しい名前を入力します。この検証では、Test17Projectと入力します
  12. ダイアログのJREセクションで、Use default JRE (currently JDK 1.7)を選択します
  13. 完了をクリックします。

お役に立てれば

10
JAM

Java 6の横にjdk7をインストールした後、この問題が発生しました。バイナリはupdate-alternatives --config Javaを使用してjdk7に正しく更新されましたが、$Java_HOME環境変数はJava 6。

9
liecno

最新バージョンに一致するようにJava実行可能ファイルへのパスを変更する必要があるようです。基本的に、最新のJavaをインストールしても、必ずしも最新バージョンを使用するようにマシンが構成されているとは限りません。プラットフォームの詳細については言及していませんでしたので、それだけです。

2
hvgotcodes