はじめに
HomebrewでインストールしたOpenJDK@11をEclipseで使用したかったが、かなりつまずいたのでここに記録する。
前提条件
- チップ
- Apple M1 Pro
- OS
- macOS Ventura version:13.1
- こちらの記事を参考に、HomebrewでOpenJDK@11をインストール
- Pleiades All in OneのEclipse 2022版(version:2022-12 (4.26.0))をインストール
つまずいたこと
OpenJDK@11とPleiades All in Oneのインストールを終え、Eclipseを起動するも、以下の2つのことにつまずいた。
1.JREの追加画面でHomebrewのOpenJDK@11が見つからない
~ % which java '/opt/homebrew/opt/openjdk@11/bin/javaが出力される
上の出力結果より「/opt/homebrew/opt/openjdk@11/bin/」でJREの追加を試みるも、「ターゲットは JDK ルートではありません。」と表示され、進まない。
2.Hallo Worldできない
上記1の課題は解決し、Hello Worldの出力を試みるも、失敗する。
package test;
public class Test {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
/**
エラー: メイン・クラスtest.Testのロード中にLinkageErrorが発生しました
java.lang.UnsupportedClassVersionError: test/Test has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
**/
解決編
1.JREの追加画面でHomebrewのOpenJDK@11が見つからない
-
表示された画面で、Java>インストール済みのJREを選択し、画面右の追加ボタンを押す。
-
MacOS X VMを選択し、次へボタンを押す。
-
「/opt/homebrew/opt/openjdk@11/bin/java」のうち、「/opt/homebrew/opt/openjdk@11/」の部分だけJREホームに入力してディレクトリーボタンを押す。
-
バージョンのディレクトリがあるので、クリックしてOpenボタンを押す。
-
外部JARの追加ボタンを押す。
-
libディレクトリ>jrt-fs.jarを選択してOpenボタンを押す。
-
ソース添付ボタンを押し、外部ロケーションを選択>外部ファイルボタンからsrc.zip(開いたディレクトリの中にある)を選択してOpenボタンを押す。
2.Hallo Worldできない
- メニューバー>Eclipse>設定をクリックする。
- Java>コンパイラーを選択する。
- コンパイラー準拠レベルを11にする。
- 適用して閉じるボタンを押す。
- 出てきた画面(再ビルドするか)ではいボタンを押す。
- 再度javaファイルを実行すると、Hello Worldが出力される。
最後に
素直に用意されているjava11を使えばよかった。