Visual Studio Code を再インストールした後、Java をコンパイルできません: 「NameOfMyClass は、より新しいバージョンの Java ランタイムによってコンパイルされました」

Visual Studio Code を再インストールした後、Java をコンパイルできません: 「NameOfMyClass は、より新しいバージョンの Java ランタイムによってコンパイルされました」

ラップトップに Windows を再インストールし、Visual Studio Code、JDK も再インストールしました。しかし、デバッガー(?) の問題に直面しています。

Maven の外部で Java ファイルをコンパイル/デバッグしようとするたびに、この例外が発生します (これが私が書いた単純なコンソール出力「Hello world」の空のクラスであっても、このエラーが発生します。Java 拡張パックを使用してコンパイル/デバッグしようとしています: :

java.lang.UnsupportedClassVersionError: NameOfMyClass は、より新しいバージョンの Java ランタイム (クラス ファイル バージョン 52.65535) でコンパイルされています。このバージョンの Java ランタイムは、クラス ファイル バージョン 52.0 までしか認識しません。

  • JDKバージョンは1.8.0 201
  • VSコード1.32.3
  • JAVA_HOME 変数は正しいパス「C:\Program Files\Java\jdk1.8.0_201」に設定されています

何かアイデアはありますか?

答え1

この問題は Java デバッガ拡張機能に関連しています。私も同じ問題を抱えており、問題ログに記録されています:https://github.com/Microsoft/vscode-java-debug/issues/555

問題は、HelloWorld のような単一ファイル アプリケーションでのみ発生します。Maven プロジェクトを実行する場合は問題ありません。

Medsonk の指示は私にとっては効果的でした:https://github.com/Microsoft/vscode-java-debug/issues/555#issuecomment-478464496

要約:
1. jdk8 をアンインストールしてクリーンにする
2. jdk11 をインストールする
3. launch.json に "vmArgs": "--enable-preview" を追加する
4. F1、"Java: Clean ……" および "Java: Force ……"
5. スタンドアロン ファイルを再度実行する

関連情報