OpenJDK 25 のインストールと設定(Ubuntu 上)

目次
  1. 前準備
  2. インストール
  3. Eclipse Temurin を使う場合
  4. 設定
  5. サンプルプログラムの実行
【サイト内の Java 関連の資料】
  • OpenJDK のインストールと Java プログラムの実行: 別ページ »にまとめ
  • Javaプログラミング基礎講座:段階的に学ぶJavaの基本と実践(コース資料)(全6回): 別ページ »にまとめ
  • Java マスター講座:基礎から応用まで(授業資料): 別ページ »にまとめている.
OpenJDK 25 は 2025 年 9 月公開の長期サポート版(LTS)である.Ubuntu 26.04 LTS では既定の Java バージョンであり,Ubuntu 22.04 LTS および Ubuntu 24.04 LTS でも universe リポジトリの「openjdk-25-jdk」でインストールできる.

Ubuntu が提供する OpenJDK 以外の選択肢としては,Eclipse Adoptium が提供する Eclipse Temurin がある.Temurin は Adoptium 公式の apt リポジトリから apt で導入でき,Ubuntu のリリースサイクルとは独立して新しいバージョンや更新が提供される.どちらも同じ OpenJDK 由来のビルドであり,Java 言語やライブラリの仕様は同一である.Ubuntu のパッケージ管理だけで完結させたい場合は openjdk-25-jdk,複数の JDK バージョンをそろえたい場合や特定ベンダのビルドが必要な場合は Temurin を選ぶ.

前準備

Ubuntu のシステム更新

Ubuntu で OS のシステム更新を行うときは, 端末で,次のコマンドを実行する.これは,パッケージ情報を最新の状態に保ち,インストール済みのパッケージをセキュリティ更新やバグ修正を含めて更新するためである.

Ubuntu のインストールはこちらの別ページで説明する.
# パッケージリストの情報を更新
sudo apt update
# インストール済みのパッケージを包括的に更新 (依存関係の変更も反映)
sudo apt full-upgrade
# カーネル更新等で再起動が必要な場合のみ実行
# sudo shutdown -r now

インストール

openjdk-25-jdk」の「25」は,インストールしたい OpenJDK のバージョンの指定である. apt でインストールできる OpenJDK は「apt-cache search openjdk」で調べることができる. LTS である openjdk-17-jdkopenjdk-21-jdk をインストールする場合も,以下の手順の「25」の部分を置き換えて同じように実施できる.

端末で,次のコマンドを実行する.

# パッケージリストの情報を更新
sudo apt update
sudo apt -y install openjdk-25-jdk
「E: Unable to locate package openjdk-25-jdk」と表示される場合は,universe リポジトリが有効になっていない. 端末で,次のコマンドを実行して有効化する.
sudo add-apt-repository universe
sudo apt update
sudo apt -y install openjdk-25-jdk

Eclipse Temurin を使う場合

Ubuntu の openjdk パッケージの代わりに Eclipse Temurin を使う場合は,Adoptium が提供する apt リポジトリを追加する. 端末で,次のコマンドを実行する. リポジトリを追加すると,以後は apt の通常の更新手順で Temurin の更新も適用される.

# リポジトリ追加に必要なパッケージのインストール
sudo apt update
sudo apt -y install wget apt-transport-https gpg

# Adoptium の GPG 公開鍵の登録
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/adoptium.gpg > /dev/null

# Adoptium の apt リポジトリの登録(Ubuntu のコードネームを自動で判定)
echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list

# インストール
sudo apt update
sudo apt -y install temurin-25-jdk
Temurin のインストール先は「/usr/lib/jvm/temurin-25-jdk-amd64」である. Temurin のパッケージも Ubuntu の update-alternatives の仕組みに登録されるため,次の「設定」の手順で切り替えて使用できる.

設定

  1. OpenJDK 25 を優先して使用するように設定

    複数のバージョンの JDK がインストールされている場合,どれを使用するかは update-java-alternatives で切り替える. 端末で,次のコマンドを実行する. 「-s」で指定する名前は「update-java-alternatives -l」で表示される名前である.

    ls -al /usr/lib/jvm
    update-java-alternatives -l
    sudo update-java-alternatives -s java-1.25.0-openjdk-amd64
    java -version
    
  2. 設定の確認

    端末で,次のコマンドを実行する. java コマンドの実体として選択されているパスが表示される.

    sudo update-alternatives --config java
    
  3. java のバージョンの確認

    端末で,次のコマンドを実行する. 「openjdk version "25...」のように表示されれば,OpenJDK 25 が選択されている. コンパイラのバージョンは「javac -version」で確認する.

    update-java-alternatives -l
    java -version
    javac -version
    
  4. 環境変数 JAVA_HOME の設定

    Java を使用するソフトウェアの多くは,環境変数 JAVA_HOME で JDK の場所を判断する. ~/.bashrc または ~/.bash_profile に次のように設定する(設定例). 設定後は端末を開き直すか「source ~/.bashrc」を実行する. ディレクトリ名は「ls -al /usr/lib/jvm」の結果に合わせる(java-1.25.0-openjdk-amd64 は java-25-openjdk-amd64 へのシンボリックリンクである.Temurin の場合は temurin-25-jdk-amd64 を指定する).

    export JAVA_HOME=/usr/lib/jvm/java-1.25.0-openjdk-amd64
    export PATH=$JAVA_HOME/bin:$PATH
    
    環境変数 CLASSPATH は,通常は設定しない.設定しない場合,java コマンドと javac コマンドはカレントディレクトリを検索する.CLASSPATH を設定すると,その値が優先され,カレントディレクトリのクラスが読み込まれなくなることがある.

サンプルプログラムの実行

サンプルプログラム

ファイル「HelloWorld.java」の作成

public class HelloWorld
{
    public static void main(String args[])
    {
        System.out.println("Hello Java World !");
    }
}

コンパイルと実行

  1. コンパイルと実行

    HelloWorld.java を保存したディレクトリで,次のコマンドを実行する. javac でコンパイルすると HelloWorld.class が生成され,java コマンドは拡張子を除いたクラス名を指定して実行する.

    javac HelloWorld.java
    java HelloWorld
    

    「Hello Java World !」と表示されれば,インストールと設定は完了している.

  2. 1 ファイルのプログラムを直接実行する場合

    Java 11 以降では,1 個のソースファイルで完結するプログラムは,コンパイルせずに java コマンドへソースファイルを渡して実行できる. HelloWorld.java を保存したディレクトリで,次のコマンドを実行する.

    java HelloWorld.java