EclipseのJavaプロジェクトで使うJDK(Java)を新規追加して設定する

新バージョンのOpenJDKをOSにインストールしたので、EclipseのJavaプロジェクトで使用するJava(JDK)で新バージョンOpenJDKを使えるように設定しています。図解で解りやすく説明しているので、Java・Eclipseの初心者・入門者の方も参考にしてください。

※ 本ページはプロモーションが含まれています。

目的と動作環境

最終更新日:2023/5/31

本記事では、統合開発環境Eclipse上のJavaプロジェクト(Spring Bootプロジェクトとかも)で使用するJava(JDK)の新規追加、変更、設定などの方法について説明しています。

私が使っているEclipseはPleiades All in One Java Full Editionで、このEclipseはJava(JDK)もバンドルされているのですが、ただEclipseのバージョンがちょっと古くて(Eclipse 2020)、その分バンドルされているJavaのバージョンも6,7,8,11,14と古く、新しいバージョンのJDK(JRE)を使いたいなと思っていました。

最新版のEclipseを入れ直す事も考えたけど、OSに新バージョンのJDKをインストールしてそのJDKをEclipseで使えるように設定した方が速いし手軽だから、そっちの方向で進める事にしました。

ちなみに私がインストールしたJDKはEclipse TemurinのOpenJDK17(Java17)で、別ページでインストール方法について書いているので、良ければ参考にしてください。(OpenJDK17(Java17)は、LTS(長期サポート)では最新バージョンです(2023/5/31時点)。)
OpenJDK17をインストールする【macOS】
また、Eclipseのインストールについても別ページで書いています。
Eclipse(Pleiades All in One)をインスールしてJava開発環境を作る【macOS版】

・動作環境やバージョンは以下の通りです。
OS:macOS Big Sur(バージョン11.7.*)
->Windows環境でもほぼ同じだと思う。
Eclipse:Pleiades All in One Java Full Edition

Javaプロジェクトで使用するJDK(Java)を変更・設定する【図解】

最初に、既にあるJavaプロジェクトで使用しているJava(JDK)を変更します。

以下、シンプルなJavaプロジェクトで説明していますが、Spring BootプロジェクトのようなJava関連プロジェクトでも同じように使用しているJava(JDK)を変更できます。

Eclipseのパッケージ・エクスプローラービューのJavaプロジェクト内にJREシステム・ライブラリーがあるので、これを右クリックしてプロパティを選択します。
EclipseのJavaプロジェクトのJREのプロパティ

JREシステム・ライブラリーのプロパティ画面を開きます。この画面で使用するJavaを選択するのですが、OS上に新しくインストールしたOpenJDK17に設定を変更したい場合、まずOpenJDK17を追加登録するために"インストール済みのJRE"ボタンを選択します。

インストール済みのJREの設定画面が開くので、追加ボタンを選択します。 Eclipseのインストール済みのJRE設定画面

JREの追加画面が開くので、標準VMを選択した状態で"次へ"ボタンを選択します。
EclipseのJRE追加画面で標準VM

"JRE ホーム"の右側にあるディレクトリーボタンを選択して、追加したいJDKのディレクトリを選びます(ここでインストールしたOpenJDK17のディレクトリパスを選ぶ。自分のPC環境の場合、インストールしたEclipse TemurinのOpenJDK17(Java17)があるディレクトリの「/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home」)

JREホームとJREシステム・ライブラリーの欄に追加したJDKのディレクトリパスが入ります。あとJRE名を一目見て分かるような名前に変更しておくと良いと思う(自分の場合は、Eclipse TemurinのOpenJDK17なので"temurin-openjdk17"にした。)。できたら完了ボタンを選択します。
EclipseのJRE追加でOpenJDKホームとJRE名を設定

インストール済みのJREの設定画面に戻ります。先程追加登録したOpenJDK17が一覧に加わっています。追加したJDKをデフォルトのJREに設定してもいいが、ここではデフォルトにしないでそのまま適用して閉じるボタンを押します。

JREシステム・ライブラリーのプロパティ画面に戻ります。代替JREにチェックを入れ、セレクトボックスから追加したJDKを選択できるようになっているので選択します。そして適用して閉じるボタンを押します。
EclipseのJREシステムライブラリーの設定画面でOpenJDK17を設定

これで設定は完了です。
Eclipseのパッケージ・エクスプローラービューのJavaプロジェクトを確認すると、JREシステム・ライブラリーが先程設定したJDKに変更されているのが分かります。その中のjarファイル群を見ても、ちゃんと設定したJDKのjarになっています。

ちなみに今回はプロジェクト内のJREシステム・ライブラリーを右クリック->プロパティから設定しましたが、JREシステム・ライブラリーを右クリック->ビルド・パス->ビルド・パスの構成からでも設定できます。

Javaのビルドパスの設定画面が開くので、そこでライブラリータブを選択して、編集ボタンを押せばJREシステム・ライブラリーのプロパティ画面を開くので、あとは解かると思います。
EclipseのプロジェクトのJavaビルドパス設定画面

JavaコードでJDK(Java)のバージョンやディストリビューションを確認してみる

せっかく新しくインストールしたOpenJDK17に設定したので、簡単なJavaプログラミングコードでJDKのバージョンや種類(ディストリビューション)などの情報を確認してみます。

JDKの種類やバージョン情報を得るには、System.getProperty()メソッドにプロパティを指定すればできます。
試しにこのコードを書いて、実行してみます。

public class SampleSystemProp {
  public static void main(String[] args) {
    System.out.println("java.version : " + System.getProperty("java.version"));
    System.out.println("java.vendor :" + System.getProperty("java.vendor"));
    System.out.println("java.home :" + System.getProperty("java.home"));
    System.out.println("java.vm.name : " + System.getProperty("java.vm.name"));
    System.out.println("java.vm.version :" + System.getProperty("java.vm.version"));
    System.out.println("java.vm.vendor :" + System.getProperty("java.vm.vendor"));
  }
}
実行結果です。
java.version : 17.0.7
java.vendor :Eclipse Adoptium
java.home :/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
java.vm.name : OpenJDK 64-Bit Server VM
java.vm.version :17.0.7+7
java.vm.vendor :Eclipse Adoptium

OpenJDKのバージョンやディストリビューションや本体ディレクトリパスの情報を取得できました。

新規でJavaプロジェクトやSpring Bootプロジェクト作成時に使用するJavaを設定する

既にあるJavaプロジェクトで使用するJava(JDK)の変更方法について説明してきましたが、新規でJavaプロジェクトを作成する際もウィザードで使用するJavaを選択する事ができます。(もちろん事前に使用したいJDKをJREの設定画面で追加登録しておく必要がある。)
Eclipseの新規Javaプロジェクト作成時にJDKを指定する

けど、Spring Bootプロジェクトを新規で作る時は(新規Springスターター・プロジェクト)、Javaバージョンを選択できるけど、これはあくまでプロジェクトのpom.xml内(Mavenの場合)のJavaバージョン情報みたいで、出来上がったSpring Bootプロジェクト内のJREシステムライブラリーのバージョンを確認するとJava14になっていました。(自分のEclipseにバンドルされているJavaの最新バージョンは14だからかも。)
EclipseのSpring Bootプロジェクト作成時にJavaバージョンを指定する

もちろん、Spring Bootプロジェクト作成後に、使用するJDK(Java)を変更する事は可能です。
STSプラグインをアッグプレード(更新)すれば、もしかしたらSpring Bootプロジェクト作成時にJavaバージョンの指定もできるようになるかもと考えたのですが、STSプラグインの更新ができなくてギブアップ、プロジェクト作成後に設定変更できるからいいのです。