【2024年保存版】UbuntuにJavaをインストールする方法!初心者でも3分で完了

はじめに

UbuntuでJava開発を始めようとしていませんか?本記事では、Ubuntuに最新のJavaをインストールする方法を、初心者にもわかりやすく解説します。環境構築でつまずくことなく、スムーズにJava開発を始められるよう、手順を1つ1つ丁寧に説明していきます。

この記事のポイント
  • 初心者でも3分で完了する簡単手順
  • トラブル知らずの確実なインストール方法
  • 2024年最新のUbuntuとJavaに対応
  • 開発環境構築までしっかりサポート

それでは、実際のインストール手順を見ていきましょう!

1.UbuntuにJavaをインストールする前に知っておくべきこと

Java開発環境の構築を始める前に、重要な基礎知識について説明します。適切なバージョンとディストリビューションの選択は、安定した開発環境の構築に不可欠です。

1.1 UbuntuでサポートされているJavaのバージョン

Ubuntu 22.04 LTSでは、以下のJavaバージョンが公式にサポートされています。

Javaバージョンサポート期限主な用途
OpenJDK 82026年12月までレガシーシステムの維持、古いフレームワークの実行
OpenJDK 112028年9月まで長期安定版(LTS)、エンタープライズアプリケーション
OpenJDK 172029年9月まで最新のLTS版、新規プロジェクトの推奨バージョン
OpenJDK 212031年9月まで最新機能の利用、実験的なプロジェクト

開発プロジェクトの要件に応じて、適切なバージョンを選択してください。特に指定がない場合は、最新のLTSバージョン(Java 17)の使用をお勧めします。

1.2 OpenJDKとOracle JDKの違いと選び方

JavaのディストリビューションにはOpenJDKとOracle JDKの2つの主要な選択肢があります。

OpenJDKの特徴:

 ✅ オープンソースで無料

 ✅ Ubuntuの標準パッケージマネージャーで簡単にインストール可能

 ✅ コミュニティによる活発な開発と改善

 ✅ セキュリティアップデートの迅速な提供

 ⚠️ 一部の商用機能が含まれていない

Oracle JDKの特徴:

 ✅ 商用サポートが利用可能

 ✅ 追加の商用機能が含まれている

 ✅ パフォーマンス最適化の違いがある場合もある

 ⚠️ 商用利用には有償ライセンスが必要

 ⚠️ インストールと管理が比較的複雑

選び方のガイドライン:

 1. 個人開発・学習用途の場合:

  ● OpenJDKを強く推奨

  ● インストールが簡単で、必要な機能がすべて揃っている

  ● ライセンスの心配が不要

 2. 商用プロジェクトの場合

  ● プロジェクトの要件を確認

  ● 商用サポートの必要性を検討

  ● コスト面とライセンス要件を考慮

 3. レガシーシステムの場合

  ● 既存の環境との互換性を確認

  ● 必要に応じてOracle JDKの使用を検討

大多数の開発者にとって、OpenJDKは最適な選択となります。

OpenJDKの利点
  • パッケージマネージャーを使用した簡単なインストール
  • 定期的なセキュリティアップデート
  • コミュニティサポート
  • ライセンスの簡潔さ

上記の利点から、この記事では主にOpenJDKのインストールと設定に焦点を当てて説明していきます。

2.UbuntuにJavaをインストールする手順(3ステップ)

Ubuntuで3分でJavaをインストールする手順を、初心者でも迷わないよう詳しく解説します。

2.1 Step1: パッケージマネージャーの更新方法

インストール前に、パッケージマネージャーを最新の状態に更新することで、トラブルを防ぎ、最新バージョンのJavaを確実にインストールできます。

1. ターミナルを開き、以下のコマンドを実行:

sudo apt update
sudo apt upgrade -y

 実行結果の例:

Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
...
Reading package lists... Done
💡Point
  • sudo:管理者権限でコマンドを実行
  • apt update:パッケージリストの更新
  • apt upgrade:インストール済みパッケージの更新

2.2 Step2: OpenJDKのインストールコマンド

Java 17(推奨バージョン)をインストールするための手順です。

 1. 以下のコマンドでOpenJDK 17をインストール:

sudo apt install openjdk-17-jdk -y

 他のバージョンをインストールする場合:

バージョンインストールコマンド
Java 8sudo apt install openjdk-8-jdk -y
Java 11sudo apt install openjdk-11-jdk -y
Java 21sudo apt install openjdk-21-jdk -y

インストール中の表示例:

Reading package lists... Done
Building dependency tree... Done
...
Unpacking openjdk-17-jdk:amd64 ...
Setting up openjdk-17-jdk:amd64 ...
💡Point
  • -yオプション:確認プロンプトに自動で「yes」を回答
  • jdk:開発キット(開発用の完全版)をインストール
  • jreのみが必要な場合はopenjdk-17-jreを指定

2.3 Step3: インストール完了の確認方法

インストールが正しく完了したことを確認する手順です。

 1. Javaバージョンの確認:

java --version

  正常な実行結果の例:

openjdk 17.0.9 2023-10-17
OpenJDK Runtime Environment (build 17.0.9+9-Ubuntu-122.04)
OpenJDK 64-Bit Server VM (build 17.0.9+9-Ubuntu-122.04, mixed mode, sharing)

 2. コンパイラ(javac)のバージョン確認:

javac --version

  正常な実行結果の例:

javac 17.0.9

確認のチェックリスト:

 ● java --versionコマンドが正常に実行される

 ● javac --versionコマンドが正常に実行される

 ● 表示されるバージョンが意図したものと一致する

エラーが発生した場合は、以下を確認:

 1. インストールコマンドが正常に完了したか

 2. エラーメッセージに「command not found」が含まれていないか

 3. 管理者権限(sudo)を使用したか

以上で基本的なJavaのインストールは完了です。次のセクションでは、より高度な環境設定について説明します。

3.Java環境の設定とパスの通し方

正しい環境変数の設定は、Javaアプリケーションの開発と実行に不可欠です。ここでは、Ubuntu上でのJava環境変数の適切な設定方法を解説します。

3.1 JAVA_HOMEの設定方法

JAVA_HOMEは、システム上のJavaインストールディレクトリを指定する重要な環境変数です。

1. Javaのインストールパスの確認

sudo update-alternatives --config java

 実行結果の例:

Selection    Path                                         Priority   Status
--------------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode

2. JAVA_HOMEの設定

 /etc/environmentファイルに追加:

sudo nano /etc/environment

 以下の行を追加:

JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"
💡Point
  • パスは/bin/javaを除いたディレクトリまでを指定
  • ダブルクォーテーション(”)を忘れずに付ける
  • ファイル末尾に改行を入れる

3. 設定の反映

source /etc/environment

4. 設定の確認

echo $JAVA_HOME

3.2 環境変数PATHの追加手順

PATH変数は、Javaコマンドをシステムのどこからでも実行できるようにするために重要です。

1. 現在のPATH確認

echo $PATH

2. PATH変数の更新

 ~/.bashrcファイルを編集:

nano ~/.bashrc

 ファイル末尾に以下を追加:

# Java environment variables
export PATH=$PATH:$JAVA_HOME/bin

 設定を反映:

source ~/.bashrc

 確認方法:

which java
which javac

 実行結果の例:

/usr/bin/java
/usr/bin/javac

環境変数設定のベストプラクティス:

 1. システム全体の設定(推奨)

  ● /etc/environmentを使用

  ● すべてのユーザーに適用

  ● システム再起動後も保持

 2. ユーザー個別の設定

  ● ~/.bashrcまたは~/.profileを使用

  ● 現在のユーザーのみに適用

  ● ログイン時に自動的に読み込み

 3. 設定の優先順位

   ユーザー設定 (~/.bashrc) > システム設定 (/etc/environment)

 4. 確認コマンド一覧

コマンド確認内容
echo $JAVA_HOMEJAVA_HOMEの設定値
echo $PATHPATH変数の現在値
which javajavaコマンドの場所
java --version使用中のJavaバージョン

トラブルシューティング

 ● 設定が反映されない場合:ターミナルを再起動

 ● パスが間違っている場合:update-alternatives --config javaで正しいパスを確認

 ● 権限エラーの場合:sudoの使用を確認

4.複数のJavaバージョンを管理する方法

開発者はしばしば異なるJavaバージョンを必要とする複数のプロジェクトを扱います。ここでは、Ubuntuで複数のJavaバージョンを効率的に管理する方法を解説します。

4.1 update-alternativesを使ったバージョン切り替え

update-alternativesは、Ubuntuの標準的なバージョン管理ツールで、複数のJavaバージョン間を簡単に切り替えることができます。

 1. インストール済みバージョンの確認

update-alternatives --list java

  実行結果の例:

/usr/lib/jvm/java-11-openjdk-amd64/bin/java
/usr/lib/jvm/java-17-openjdk-amd64/bin/java
/usr/lib/jvm/java-8-openjdk-amd64/bin/java

 2. バージョン切り替えの実行

sudo update-alternatives --config java

  対話式メニューの例:

There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                         Priority   Status
--------------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode
  2            /usr/lib/jvm/java-8-openjdk-amd64/bin/java    1081      manual mode

Press <enter> to keep the current choice[*], or type selection number:
💡Point
  • 番号を入力して希望のバージョンを選択
  • *(アスタリスク)は現在使用中のバージョン
  • Priorityの値が高いものが自動選択時に優先

4.2 異なるバージョンの共存設定

複数のJavaバージョンを効率的に管理するためのベストプラクティスを紹介します。

1. バージョン別のエイリアス設定

 ~/.bashrcに以下を追加:

# Java version aliases
alias java8='export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64'
alias java11='export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64'
alias java17='export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64'

 使用方法:

java17  # Java 17に切り替え
java --version  # バージョン確認

2. プロジェクトごとの設定

 プロジェクトのルートディレクトリに.java-versionファイルを作成:

echo "17" > .java-version

 シェル関数の追加(~/.bashrc):

check_java_version() {
  if [ -f .java-version ]; then
    version=$(cat .java-version)
    case $version in
      "8")  java8  ;;
      "11") java11 ;;
      "17") java17 ;;
    esac
  fi
}

cd() {
  builtin cd "$@"
  check_java_version
}

バージョン管理のベストプラクティス:

 1. システムデフォルトの設定

  ● 最新のLTSバージョンをデフォルトに

  ● update-alternativesで管理

  ● /etc/environmentでグローバル設定

 2. プロジェクト固有の設定

  ● プロジェクトごとに.java-versionファイル

  ● ビルドツール(Maven/Gradle)の設定

  ● IDE固有の設定

 3. バージョン切り替えチェックリスト

確認項目コマンド
Java実行環境java --version
コンパイラjavac --version
JAVA_HOMEecho $JAVA_HOME
現在のパスwhich java

 4. トラブルシューティング対策

  ● 切り替え後は必ずバージョン確認

  ● エイリアスの設定を.bashrcに追加

  ● シェルの再読み込みを忘れずに

  ● パーミッションエラーはsudoで解決

5.トラブルシューティング

Javaのインストールや環境設定で発生する可能性のある一般的な問題とその解決方法を解説します。

5.1 よくあるエラーとその解決方法

1. コマンドが見つからないエラー

 エラーメッセージ:

Command 'java' not found

 解決手順:

 1. Javaが正しくインストールされているか確認

dpkg -l | grep openjdk

 2. パスが正しく設定されているか確認

echo $PATH
echo $JAVA_HOME

 3. 再インストールを試す

sudo apt remove openjdk-*
sudo apt autoremove
sudo apt update
sudo apt install openjdk-17-jdk

2. バージョン不一致エラー

 エラーメッセージ:

java.lang.UnsupportedClassVersionError: ... has been compiled by a more recent version of the Java Runtime

 解決手順:

 1. 現在のバージョンを確認

java --version
javac --version

 2. 必要なバージョンをインストール

sudo apt install openjdk-<version>-jdk

 3. バージョンを切り替え

sudo update-alternatives --config java

3. JAVA_HOME関連のエラー

 エラーメッセージ:

Error: JAVA_HOME is not set and could not be found

 解決手順:

 1. 現在の設定を確認

echo $JAVA_HOME

 2. 正しいパスを確認

sudo update-alternatives --config java

 3. 環境変数を設定

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64

5.2 パーミッションエラーの対処法

1. インストール時のパーミッションエラー

 エラーメッセージ:

E: Could not open lock file /var/lib/dpkg/lock

 解決手順:

 1. ロックファイルの削除

sudo rm /var/lib/dpkg/lock
sudo rm /var/lib/apt/lists/lock

 2. パッケージ管理システムの再設定

sudo dpkg --configure -a

2. 実行権限に関するエラー

 エラーメッセージ:

Permission denied

 解決手順:

 1. ファイルの権限確認

ls -l $(which java)

 2. 必要な権限の付与

sudo chmod +x /usr/bin/java

トラブルシューティングのチェックリスト:

 1. 基本的な確認事項

  ● システムの更新状態

  ● インストール済みのJavaバージョン

  ● 環境変数の設定

  ● ファイルのパーミッション

 2. ログの確認方法

   # システムログの確認
   sudo tail -f /var/log/syslog

   # aptログの確認
   sudo tail -f /var/log/apt/term.log

 3. クリーンアップ手順

   # パッケージキャッシュのクリーンアップ
   sudo apt clean

   # 不要なパッケージの削除
   sudo apt autoremove

 4. 予防的対策

  ● 定期的なシステムアップデート

  ● 使用していないJavaバージョンの整理

  ● 環境変数の定期的な確認

  ● バックアップの作成

💡トラブル予防のTips
  • インストール前に必ずシステムを更新する
  • 一度に複数のバージョンをインストールしない
  • 環境変数の変更後はターミナルを再起動する
  • 重要な変更前にはバックアップを作成する

まとめ:UbuntuでのJavaインストールは簡単です!

ここまで、UbuntuにJavaをインストールする方法について詳しく解説してきました。最後に重要なポイントをまとめておきましょう。

インストール手順の要点

 1. パッケージマネージャーの更新

   sudo apt update && sudo apt upgrade -y

 2. OpenJDKのインストール

   sudo apt install openjdk-17-jdk -y

 3. 環境変数の設定

   export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64

確認すべきポイント

 ● Javaバージョンの確認(java -version

 ● 環境変数の設定(echo $JAVA_HOME

 ● コンパイラの動作確認(javac -version

次のステップ

 1. 開発環境の構築

  ● IDEのインストール(IntelliJ IDEA, Eclipse, VS Code)

  ● ビルドツールの設定(Maven, Gradle)

 2. スキルアップ

  ● Javaプログラミングの基礎学習

  ● Spring BootによるWeb開発

  ● データベース連携の実践

 3. 実践的な開発

  ● サンプルプロジェクトの作成

  ● GitHubでのバージョン管理

  ● CI/CDパイプラインの構築

トラブル時の対処法

 ● エラーが発生したら、まずjava -versionで状態確認

 ● パスが通っていない場合は環境変数を再確認

 ● 権限エラーの場合はsudoの使用を確認

本記事の手順に従えば、誰でも簡単にUbuntuでJava開発環境を構築できます。環境構築は開発の第一歩です。ここで学んだ知識を活かして、素晴らしいJavaアプリケーションの開発に取り組んでいきましょう!

困ったことがあれば、本記事のトラブルシューティングセクションを参照してください。それでも解決しない場合は、Ubuntuコミュニティやスタックオーバーフローなどのテクニカルフォーラムで質問することをおすすめします。