【Ubuntu対応】Javaをインストールする完全ガイド|OpenJDK・OracleJDKの違いから環境構築・エラー対処まで

目次

1. Javaとは?UbuntuでJavaが必要なシーン

Javaはどんなプログラミング言語?

Java(ジャバ)は、世界中で広く利用されているオブジェクト指向のプログラミング言語です。特徴としては「一度書けば、どこでも動く(Write Once, Run Anywhere)」という設計思想があり、OSやデバイスに依存せずにアプリケーションを実行できるのが大きな強みです。

Javaは、デスクトップアプリケーションやWebアプリケーション、モバイルアプリ(特にAndroid開発)など、幅広い開発シーンで使用されています。また、大規模な業務システムや金融システムの構築にも多用されており、今なお現役で活躍している言語のひとつです。

UbuntuにおけるJavaの役割とは?

UbuntuのようなLinux系OSにおいても、Javaは非常に重要な存在です。以下のような用途でJavaが必要とされるケースがあります。

1. Javaで開発されたアプリケーションの実行

多くのソフトウェアはJavaで開発されており、その実行にはJavaランタイム環境(JRE)が必要です。例えば、開発ツールの「Eclipse」や「IntelliJ IDEA」、データベース管理ツールの「DBeaver」などは、Javaがなければ起動しません。

2. Javaプログラミング・開発環境の構築

プログラマーや学生がUbuntu上でJava言語を学習したり、Javaを使ってアプリケーションを開発したりするには、Java開発キット(JDK)のインストールが不可欠です。Ubuntuは開発環境として人気が高く、Javaと相性も良いため、多くの開発者がこの組み合わせを活用しています。

3. サーバーアプリケーションの運用

Javaは、TomcatやSpring BootといったWebサーバー・フレームワークの基盤にもなっています。Ubuntuサーバー上でJava製のWebアプリケーションを稼働させる際にも、Java環境が必須となります。

まとめ:UbuntuとJavaは相性抜群

Ubuntuはオープンソースで軽量なため、Javaのようなクロスプラットフォームな言語との相性が良く、多くの開発者に支持されています。JavaをUbuntuにインストールすることで、アプリの利用から開発、サーバー運用まで幅広い用途に対応できます。

年収訴求

2. Ubuntuで選べるJavaの種類(OpenJDK vs Oracle JDK)

Ubuntuで利用できるJavaの選択肢とは?

Ubuntuでは、主に2種類のJava開発環境が利用可能です。それが OpenJDK(オープンジェー・ディー・ケー)Oracle JDK(オラクル・ジェー・ディー・ケー) です。

どちらもJavaプログラムの実行や開発に使える点では共通していますが、開発元やライセンス、提供方法などに違いがあります。用途や目的に応じて、適切なJDKを選ぶことが重要です。

OpenJDKとは?(Ubuntuの標準JDK)

OpenJDK(Open Java Development Kit) は、Javaのオープンソース実装です。Sun Microsystems(現Oracle)が中心となって開発されたもので、現在もオープンな開発体制で進化を続けています。

Ubuntuでは、このOpenJDKが標準として採用されており、aptコマンドを使って簡単にインストールできます。

OpenJDKの主な特徴

  • 完全無料・商用利用も可能
  • Ubuntu公式リポジトリから簡単に導入できる
  • セキュリティアップデートも定期的に提供される
  • 開発環境としての安定性が高く、企業でも採用例多数

特にこだわりがない場合や、一般的な開発用途であれば、OpenJDKを選んでおけば問題ありません。

Oracle JDKとは?(公式サポート付きJDK)

Oracle JDK は、Oracle社が提供するJavaの公式実装です。OpenJDKをベースにしており、性能最適化や特定のツールとの統合が行われていることがあります。

ただし、Oracle JDKはライセンスが異なり、商用利用にはライセンス契約が必要になる場合がある点に注意が必要です(※個人の学習目的などでは問題ありません)。

Oracle JDKの主な特徴

  • Oracleによる公式サポート・メンテナンスが受けられる
  • 商用利用ではライセンスの確認が必要
  • セキュリティパッチの提供が迅速
  • OpenJDKには含まれない一部の追加機能を含む

Ubuntuへのインストールは少し手間がかかりますが、公式サイトからダウンロードして手動でセットアップすることも可能です。

OpenJDKとOracle JDKの違いまとめ

比較項目OpenJDKOracle JDK
提供元オープンソースコミュニティOracle社
ライセンスGPL + Classpath ExceptionOracle Binary Code License(商用利用時注意)
料金無料商用利用では有償の場合あり
利用シーン一般開発・学習・社内ツール商用サービス・大規模運用
インストール方法aptで簡単に導入手動でダウンロード・設定

結論:多くのUbuntuユーザーにはOpenJDKがおすすめ

UbuntuでJava環境を整えるなら、特別な理由がない限り OpenJDKで十分 です。信頼性も高く、ほとんどのフレームワークやライブラリで問題なく動作します。

一方、商用サービスや公式サポートが必要な場合は、Oracle JDKを選ぶ選択肢もあります。用途に応じて、最適なJDKを選びましょう。

3. UbuntuにJavaをインストールする前の準備

Javaをインストールする前に確認すべきこと

UbuntuにJavaをインストールする作業自体はそこまで難しくありませんが、スムーズに進めるためにはいくつかの事前準備を行っておくことが重要です。特に、初めてUbuntuを使う方や、複数のソフトウェアをすでに導入している場合は、以下のステップを一度確認しておくと安心です。

1. パッケージリストを最新状態にする

Ubuntuでは、ソフトウェアをインストールする際にAPT(Advanced Package Tool)という仕組みを利用します。このAPTが参照する「パッケージリスト」が古いままだと、Javaパッケージの情報が見つからない・バージョンが古いといった不具合が起きることがあります。

そのため、まずは以下のコマンドでシステム全体のパッケージ情報を更新しましょう。

sudo apt update

このコマンドにより、APTが最新のパッケージリストを取得し、正しい情報に基づいてインストールを行えるようになります。

2. 不要な競合ソフトが入っていないか確認する

まれに、以前にJava関連のパッケージ(古いJDKやOpenJREなど)がインストールされていると、新しいJavaの導入時に競合が発生することがあります。

次のコマンドで、既存のJava関連パッケージがインストールされているかを確認できます。

java -version

この時点で何らかのバージョンが表示される場合は、すでにJavaがインストールされている可能性があります。その場合は、一度アンインストールしてから再インストールを行うことで、環境のトラブルを防ぐことができます。

3. 管理者権限(sudo)が使えることを確認

Javaのインストールにはシステム領域への変更が含まれるため、sudo権限が必要です。通常、Ubuntuをインストールした際に作成したユーザーにはsudo権限がありますが、万が一権限がない場合は、以下のようなエラーが表示されます:

ユーザー 'yourname' は sudoers ファイルにありません。このインシデントは報告されます。

このような場合は、管理者に依頼するか、root権限を持つユーザーで作業を行ってください。

まとめ:準備をしておくとトラブルなくインストールできる

Javaのインストール自体は簡単ですが、事前にパッケージの更新や環境の確認を行うことで、不要なエラーや混乱を回避できます。特に初心者の場合は、ここで丁寧に準備をしておくことで、次のステップをスムーズに進められるでしょう。

4. UbuntuにJavaをインストールする方法【基本編】

4.1 OpenJDKをAPTでインストールする方法

Ubuntuのソフトウェア管理には、APT(Advanced Package Tool)という仕組みが使われています。OpenJDKはUbuntuの標準リポジトリに含まれているため、以下のコマンドで簡単にインストールできます。

OpenJDK 11 をインストールする(LTSで安定)

sudo apt install openjdk-11-jdk

OpenJDK 17 をインストールする(新しいLTS版)

sudo apt install openjdk-17-jdk

使用するJavaのバージョンによって、openjdk-XX-jdk の「XX」の部分を変えてください。2025年4月現在では、1117 の2つが長期サポート(LTS)版としておすすめです。

APTを使うことで、依存関係も自動的に解決されるため、初心者の方でも安心してインストールできます。

4.2 Javaのバージョンを確認する

インストールが完了したら、Javaが正しく動作するかどうかを確認しましょう。以下のコマンドをターミナルに入力します:

java -version

実行結果の例(OpenJDK 17):

openjdk version "17.0.9" 2024-10-17
OpenJDK Runtime Environment (build 17.0.9+8-Ubuntu)
OpenJDK 64-Bit Server VM (build 17.0.9+8-Ubuntu, mixed mode, sharing)

このようにJavaのバージョン情報が表示されれば、正常にインストールされています。

4.3 複数のJavaバージョンが存在する場合の注意点

Ubuntuには複数のJavaバージョンを同時にインストールすることも可能ですが、デフォルトで使用されるバージョンはひとつだけです。

複数のJavaがインストールされている場合は、次のようにして使用するバージョンを選択できます:

sudo update-alternatives --config java

このコマンドを実行すると、利用可能なJavaバージョンの一覧が表示され、番号を選ぶことで切り替えができます。

まとめ:まずはOpenJDKのインストールから始めよう

UbuntuでJavaを始めるなら、まずは安定していて導入しやすいOpenJDK 11または17をインストールするのがおすすめです。APTコマンドを使えば、誰でも数分でJava環境を整えることができます。

5. JAVA_HOMEを設定する方法【環境変数の設定】

JAVA_HOMEとは?

JAVA_HOME は、Javaを使用するアプリケーションやツールが、Javaがどこにインストールされているかを認識するための環境変数です。
多くの開発ツールやビルドツール(例:Maven、Gradle)はこの変数を参照してJavaの実行パスを判断しています。

Javaをインストールしただけでは、この環境変数は自動的に設定されないため、手動で設定する必要があります。

JAVA_HOMEのパスを調べる方法

まずは、Javaがインストールされたパス(ディレクトリ)を確認します。次のコマンドで現在使用されているJavaの実体パスを確認できます。

readlink -f $(which java)

実行例:

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

このような出力が得られた場合、JAVA_HOME のパスは bin/java を除いた部分、つまり以下のようになります:

/usr/lib/jvm/java-17-openjdk-amd64

JAVA_HOMEを設定する手順

環境変数を設定するには、シェルの設定ファイルに追記します。Ubuntuでは通常、~/.bashrc~/.bash_profile に記述します(Zshを使っている場合は ~/.zshrc)。

1. bashrc ファイルを編集する

nano ~/.bashrc

ファイルの末尾に以下のように追加します(Javaのパスは先ほど確認したものに置き換えてください):

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

2. 変更を反映させる

保存したら、次のコマンドで設定を反映します。

source ~/.bashrc

設定が正しく反映されたか確認する

以下のコマンドで、JAVA_HOME が正しく設定されているかを確認できます。

echo $JAVA_HOME

表示されたパスが先ほど設定した内容と一致していれば、正しく反映されています。

注意点:複数のJDKを使う場合の切り替え

バージョンを切り替えた後、必要に応じて JAVA_HOME の設定も対応するパスに書き換える必要があります。
その際は、update-alternatives コマンドで選択したバージョンに対応するパスを再設定してください。

まとめ:JAVA_HOMEは開発環境構築に欠かせない設定

JAVA_HOME の設定は、Javaを活用する多くのアプリケーションにとって重要な要素です。少し手間がかかりますが、設定しておくことで後々のトラブルを防ぐことができます。

6. 複数バージョンのJavaを管理・切り替える方法

なぜ複数のJavaバージョンを使い分けるのか?

開発環境やアプリケーションによっては、特定のJavaバージョンでなければ正常に動作しないことがあります。
たとえば、あるソフトウェアはJava 8でしか動作しないが、別の開発ではJava 17が必要というようなケースです。

Ubuntuでは複数のJavaバージョンを共存させたうえで、任意のタイミングで切り替えることが可能です。

Javaのバージョンを切り替えるには?

Ubuntuでは、update-alternatives というコマンドを使って、使用するJavaバージョンを選択できます。

ステップ1:複数バージョンのJavaをインストール

まずは切り替え対象となるJavaのバージョンをすべてインストールしておきます。たとえば、Java 8とJava 17をインストールするには:

sudo apt install openjdk-8-jdk
sudo apt install openjdk-17-jdk

ステップ2:update-alternativesでJavaの一覧を表示

次に、現在インストールされているJavaバージョンを確認・選択するために以下のコマンドを実行します。

sudo update-alternatives --config java

実行結果例:

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

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

Press <enter> to keep the current choice[*], or type selection number:

表示された番号(1, 2 など)を入力することで、使用するJavaバージョンを切り替えることができます。

javac(Javaコンパイラ)も同様に切り替える

java コマンドだけでなく、Javaソースコードをコンパイルする javac コマンドも同様にバージョン切り替えが必要です。以下のコマンドで対応します。

sudo update-alternatives --config javac

こちらも java と同じように、リストから選択して切り替えましょう。

JAVA_HOMEも切り替えが必要な場合あり

バージョンを切り替えた後、必要に応じて JAVA_HOME の設定も対応するパスに書き換える必要があります。
その際は、update-alternatives コマンドで選択したバージョンに対応するパスを再設定してください。

よくあるミスと対処法

  • Javaは切り替えたが、IDEで反映されない:
    → EclipseやIntelliJなどのIDE側にもJavaパスを設定する必要があります。
  • Javaは動作するが、javac が切り替わっていない:
    javacupdate-alternatives を使って個別に切り替える必要があります。

まとめ:柔軟な切り替えで複数プロジェクトを効率運用

Ubuntuでは、複数のJavaバージョンを簡単に管理・切り替えることができます。特に複数のプロジェクトやフレームワークを扱う開発者にとっては、切り替えの柔軟性は大きなメリットです。

7. よくあるエラーとその対処法

エラー1:「Unable to locate package openjdk-xx-jdk」

症状

APTコマンドでJavaをインストールしようとした際に、次のようなエラーが表示されることがあります。

E: Unable to locate package openjdk-17-jdk

原因

  • パッケージリストが古い
  • スペルミス(openjdk-17-jdkopenjdk-17-jdk など)
  • 使用しているUbuntuバージョンに対応するJavaパッケージが存在しない

対処法

まず、パッケージリストを最新に更新します:

sudo apt update

それでも解決しない場合は、利用中のUbuntuに対応していないJavaバージョンを指定している可能性があります。その場合は以下のコマンドで利用可能なOpenJDK一覧を確認してください:

apt search openjdk

エラー2:「java: command not found」

症状

Javaをインストールしたはずなのに、次のようなエラーが出る場合:

Command 'java' not found, but can be installed with:
sudo apt install default-jre

原因

  • Javaパッケージが正しくインストールされていない
  • PATH 環境変数にJavaのパスが通っていない

対処法

まずはJavaがインストールされているか確認し、不足していれば以下のコマンドでインストール:

sudo apt install default-jre

または、特定のバージョンを指定してインストール:

sudo apt install openjdk-17-jdk

その後、java -version で確認して動作するかどうかをチェックします。

エラー3:JAVA_HOME を設定したのに反映されない

症状

環境変数 JAVA_HOME を設定したのに、echo $JAVA_HOME が空、または期待したパスでない。

原因

  • .bashrc に設定したが source ~/.bashrc を実行していない
  • 設定が間違っている(スペルミスやパスミス)

対処法

  1. 設定ファイルをもう一度確認:
nano ~/.bashrc
  1. 修正後、反映する:
source ~/.bashrc
  1. 正しく設定されたか確認:
echo $JAVA_HOME

エラー4:Javaは動作するのに javac が使えない

症状

java は使えるのに、Javaファイルをコンパイルしようとすると次のようなエラー:

Command 'javac' not found

原因

  • JRE(Java実行環境)のみインストールしており、JDK(開発キット)が入っていない

対処法

以下のコマンドでJDKをインストール:

sudo apt install openjdk-17-jdk

再度確認:

javac -version

エラー5:Javaバージョンを切り替えたのに反映されない

症状

update-alternatives で切り替えたのに、バージョンが変わらない。

原因

  • 切り替えが javajavac の両方に反映されていない
  • JAVA_HOME が古いパスのままになっている

対処法

sudo update-alternatives --config java
sudo update-alternatives --config javac

その後、JAVA_HOME の変更も確認・更新しましょう。

まとめ:エラーは慌てず冷静に対応を

UbuntuでのJava設定時にエラーが出ても、原因のほとんどは環境設定や入力ミスです。エラーメッセージをよく読み、落ち着いて対応すれば解決できます。
本記事をブックマークしておくと、再設定時にも安心です。

8. GUIでJavaをインストールする方法(初心者向け)

ターミナルが苦手でも大丈夫

UbuntuはLinuxの中でも使いやすいOSですが、「コマンドラインが難しそう」と感じる方も多いかもしれません。
実は、Ubuntuではマウス操作だけでソフトをインストールできるGUI(グラフィカルユーザーインターフェース)が用意されています。

ここでは、Ubuntuの標準ソフト「Ubuntuソフトウェア(別名:ソフトウェアセンター)」を使って、Java(OpenJDK)をインストールする手順を解説します。

Ubuntuソフトウェアを使ったJavaのインストール手順

ステップ1:Ubuntuソフトウェアを開く

  1. 左下の「アクティビティ」またはランチャーから「Ubuntuソフトウェア」をクリックします。
  2. 起動したら、上部にある検索アイコン(虫眼鏡マーク)をクリックします。

ステップ2:「OpenJDK」で検索する

検索バーに 「openjdk」 と入力します。
しばらくすると、検索結果の中に「OpenJDK Java Runtime」や「OpenJDK Java Development Kit」などが表示されます。

ステップ3:バージョンを選んでインストール

  • たとえば、「OpenJDK 11 Java Development Kit」などを選択します。
  • 詳細画面に切り替わったら、「インストール」ボタンをクリックします。
  • パスワード入力を求められるので、Ubuntuのログインパスワードを入力して承認します。

これでJavaのインストールが開始されます。数十秒から数分で完了します。

インストール後の確認(GUIでもOK)

コマンドを使わずにJavaのバージョンを確認したい場合、以下の方法もあります。

  1. 「ターミナル」を開いて java -version と入力(確認だけならこのコマンドは簡単です)
  2. もしくは、Javaを必要とするアプリケーション(例:DBeaverやEclipseなど)を起動して、問題なく動作するかチェック

注意点:GUIでインストールできるバージョンには限りがある

UbuntuソフトウェアからインストールできるJavaパッケージは、常に最新版とは限りません。また、複数のバージョンを同時に使い分けるような細かい制御はGUIからは難しいです。

そのため、より高度な開発や環境管理を行いたい方は、後々ターミナル操作にもチャレンジしてみることをおすすめします。

まとめ:初心者はGUIからのインストールでOK

Ubuntuでは、GUIを使っても簡単にJavaを導入できます。コマンド入力が苦手な方でも安心して使える方法です。まずはGUIでJava環境を整え、慣れてきたらターミナルにも少しずつ挑戦してみましょう。

9. Java開発環境の構築【+α】

Java開発には何が必要?

Javaで開発を行うには、主に以下のツールが必要です。

種類役割
JDK(Java Development Kit)Javaの開発・実行に必要な基本環境
ソースコードエディタ/IDEJavaコードを書く・補完・デバッグなどを行うツール
ビルドツール(MavenやGradle)プロジェクトの依存管理やビルドを自動化

おすすめのJava開発ツール(IDE)3選【Ubuntu対応】

1. Eclipse(イクリプス)

  • Java開発向けの定番統合開発環境(IDE)
  • シンプルで安定しており、長年使われている
  • プラグインが豊富で、Webアプリ・Android・Spring開発にも対応

インストール方法(Snapを使う)

sudo snap install eclipse --classic

2. IntelliJ IDEA(インテリジェイ・アイディア)

  • 直感的な操作と高機能で人気のIDE
  • Community版は無料、Professional版は有料(商用利用向け)
  • コード補完やUIの使いやすさが群を抜いている

インストール方法(Snap経由)

sudo snap install intellij-idea-community --classic

3. Visual Studio Code(VS Code)

  • 軽量・高速なコードエディタ(IDEというよりエディタに近い)
  • Java用の拡張機能があり、簡易的な開発にも便利
  • 他の言語(Python、Cなど)も同時に扱う場合におすすめ

インストール方法

sudo snap install code --classic

※インストール後、「Java Extension Pack」などの拡張機能を導入することで、Java開発にも最適化されます。

ビルドツールの導入(Maven / Gradle)

Java開発では、依存ライブラリの管理やビルド作業を自動化するためにビルドツールを使うのが一般的です。代表的なものに以下の2つがあります。

Apache Maven のインストール:

sudo apt install maven

Gradle のインストール(少し新しい手順が必要な場合あり):

sudo apt install gradle

これらのツールを使うことで、Javaプロジェクトの管理がより効率的になります。

まとめ:Ubuntuでも本格的なJava開発が可能!

Ubuntuは軽量かつ安定しており、Javaとの相性も非常に良い開発環境です。EclipseやIntelliJ IDEAなどのIDE、MavenやGradleなどのビルドツールを活用すれば、初心者からプロの開発者まで幅広く対応できます。

Javaを「使う」だけでなく、「作る」側になりたい方は、ぜひこの開発環境の構築にも挑戦してみましょう。

10. よくある質問(FAQ)

Q1. OpenJDKとOracle JDK、どちらを選べばいいですか?

基本的には OpenJDKで問題ありません。Ubuntuでも標準でサポートされており、無料で商用利用も可能です。
一方、Oracle JDKは企業向けに最適化されており、公式サポートや追加機能が必要な場合に選ばれることがあります。ただし、商用利用にはライセンス確認が必要なので注意しましょう。

Q2. Javaの最新バージョンをUbuntuにインストールするには?

Ubuntuの標準リポジトリにはすぐに最新のJavaバージョンが反映されない場合があります。その場合は、以下のいずれかの方法で導入可能です:

  • PPAを追加する(例:sudo add-apt-repository ppa:openjdk-r/ppa
  • Oracle公式サイトから手動インストール

ただし、安定性やセキュリティ面を考慮して、LTS(長期サポート)バージョン(例:OpenJDK 11、17)を使うのが一般的です。

Q3. JAVA_HOMEって絶対に設定しないといけませんか?

Javaを単に実行するだけであれば設定不要です。ただし、以下のようなケースでは JAVA_HOME の設定が求められます:

  • 開発環境(Eclipse、IntelliJ など)の構築
  • ビルドツール(Maven、Gradle)の使用
  • Javaを必要とする他のアプリケーションの構成

これらを扱う予定がある場合は、早めに設定しておくのがベストです。

Q4. Javaのアンインストール方法を教えてください

APTでインストールしたJavaは、次のコマンドで削除できます。

sudo apt remove openjdk-17-jdk

複数バージョンがある場合は、該当するバージョンごとに同様のコマンドで削除可能です。
削除後は、念のため java -version で動作を確認しておきましょう。

Q5. Javaのバージョンが切り替わらないときの対処法は?

複数バージョンをインストールしていても、正しく切り替えが行われていないと古いバージョンが使われることがあります。その場合は:

sudo update-alternatives --config java
sudo update-alternatives --config javac

これらで手動選択してください。また、JAVA_HOME の変更も忘れずに。

Q6. GUIとターミナル、どちらでインストールすべき?

基本的なJava環境であれば、GUIでも十分対応可能です。コマンド入力が苦手な方は、UbuntuソフトウェアからのインストールでもOKです。
ただし、複数バージョンの管理やカスタム設定を行いたい場合は、ターミナル操作の方が柔軟でおすすめです。

まとめ:つまずいたらこの記事に戻ろう

Javaは長年使われている言語だけあって、情報も豊富です。本記事で紹介した内容を活用すれば、Ubuntu上でもスムーズにJavaの環境構築が可能です。
FAQは今後もつまずいた時の参考として、ぜひブックマークしておいてください。

侍エンジニア塾