今日、javac を使用してプログラムをコンパイルしようとすると、コンソールに次の警告が表示されるようになりました。
警告: Blabla.class: メジャー バージョン 52 は、このコンパイラでサポートされている最高のメジャー バージョン 51 よりも新しいです。
コンパイラをアップグレードすることをお勧めします。
しかし、どうすればそれができるのでしょうか?
PS. コマンドjavac -version
は 1.7.0_85 を返しますが、 はjava -version
1.8.0_66 を返します。この混合がどのようにして発生したのかはわかりません。
答え1
複数の Java バージョンがインストールされており、 と に異なるバージョンを使用していますjava
。javac
はjavac -version
を返し1.7.0_85
、 はjava -version
を返します1.8.0_66
。つまり、 はjavac
Java 7 のバイトコードを作成し、 Java 8 のバージョンをコンパイルしようとしています。
実行する
sudo update-alternatives --config javac
問題を解決するには、Java 8 を選択します。