Java
 Computer >> コンピューター >  >> プログラミング >> Java

Ubuntu 16.04でAptを使ってJavaをインストールする方法

Javaは、ジェームズ・ゴスリング(James Gosling)によって開発が始められ、Sun Microsystems社が1995年に同社のJavaプラットフォームの中核コンポーネントとしてリリースしたプログラミング言語です(Java 1.0[J2SE])。

Java Standard Editionの最新リリースはJava SE 8です。Javaの進化と普及に伴い、さまざまなプラットフォームに対応できるよう複数の構成が用意されました。たとえば、エンタープライズアプリケーション向けのJ2EEや、モバイルアプリケーション向けのJ2MEなどが代表的です。

新しいJ2系のバージョンは、それぞれ「Java SE」「Java EE」「Java ME」と名称が変更されました。Javaは「Write Once, Run Anywhere(一度書けば、どこでも動く)」が保証されている言語です。この記事では、Ubuntu上でapt-getコマンドを使ってJavaをインストールする方法をわかりやすく解説します。

デフォルトのJRE/JDKをインストールする

Java Runtime Environment(JRE)をインストールするには、以下のコマンドを実行します。

$ sudo apt-get install default-jre

実行すると、以下のような出力が表示されます。

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
    apport-hooks-elementary contractor javascript-common libgda-5.0-4
    libgda-5.0-common libgranite-common libgranite3 libgsignon-glib1
    libindicate5 libjs-jquery libnoise-core0 libtagc0 mysql-server-5.7
    mysql-server-core-5.7
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
    ca-certificates-java default-jre-headless fonts-dejavu-extra java-common
    libbonobo2-0 libbonobo2-common libgif7 libgnome-2-0 libgnome2-common
    libgnomevfs2-0 libgnomevfs2-common liborbit-2-0 openjdk-8-jre
openjdk-8-jre-headless
Suggested packages:
    default-java-plugin libbonobo2-bin desktop-base libgnomevfs2-bin
    libgnomevfs2-extra gamin | fam gnome-mime-data icedtea-8-plugin
    openjdk-8-jre-jamvm fonts-ipafont-gothic fonts-ipafont-mincho
    ttf-wqy-microhei | ttf-wqy-zenhei fonts-indic
The following NEW packages will be installed:
    ca-certificates-java default-jre default-jre-headless fonts-dejavu-extra
    java-common libbonobo2-0 libbonobo2-common libgif7 libgnome-2-0
...........................................................................

もうひとつのデフォルトのJavaパッケージとして、JDK(Java Development Kit)があります。JDKは、Javaプログラムをコンパイルして開発を行う場合や、使用するソフトウェアが明示的にJDKを要求する場合に必要になります。JDKをインストールするには、以下のコマンドを実行しましょう。

$ sudo apt-get install default-jdk

実行すると、以下のような出力が表示されます。

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
    apport-hooks-elementary contractor javascript-common libgda-5.0-4
    libgda-5.0-common libgranite-common libgranite3 libgsignon-glib1
    libindicate5 libjs-jquery libnoise-core0 libtagc0 mysql-server-5.7
    mysql-server-core-5.7
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
    default-jdk-headless libice-dev libpthread-stubs0-dev libsm-dev libx11-dev
    libx11-doc libxau-dev libxcb1-dev libxdmcp-dev libxt-dev openjdk-8-jdk
    openjdk-8-jdk-headless x11proto-core-dev x11proto-input-dev x11proto-kb-dev
    xorg-sgml-doctools xtrans-dev
Suggested packages:
    libice-doc libsm-doc libxcb-doc libxt-doc openjdk-8-demo openjdk-8-source
    visualvm
The following NEW packages will be installed:
    default-jdk default-jdk-headless libice-dev libpthread-stubs0-dev libsm-dev
    libx11-dev libx11-doc libxau-dev libxcb1-dev libxdmcp-dev libxt-dev
    openjdk-8-jdk openjdk-8-jdk-headless x11proto-core-dev x11proto-input-dev
    x11proto-kb-dev xorg-sgml-doctools xtrans-dev
0 upgraded, 18 newly installed, 0 to remove and 168 not upgraded.
Need to get 11.9 MB of archives.
.....................................................................................

Oracle JDKをインストールする

Oracle JDKをインストールする場合は、まずwebupd8teamが提供するPPAリポジトリをシステムに追加します。以下のコマンドを実行してください。

$ sudo add-apt-repository ppa:webupd8team/java

実行すると、以下のような出力が表示されます。

Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK7 / JDK8 / JDK9). There are no actual Java files in this PPA.

More info (and Ubuntu installation instructions):
- for Oracle Java 7: https://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html
- for Oracle Java 8: https://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html

Debian installation instructions:
- Oracle Java 7: https://www.webupd8.org/2012/06/how-to-install-oracle-java-7-in-debian.html
- Oracle Java 8: https://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html

Important!!! For now, you should continue to use Java 8 because Oracle Java 9 is available as an early access release (it should be released in 2016)! You should only use Oracle Java 9 if you explicitly need it, because it may contain bugs and it might not include the latest security patches! Also, some Java options were removed in JDK9, so you may encounter issues with various Java apps. More information and installation instructions (Ubuntu / Linux Mint / Debian): https://www.webupd8.org/2015/02/install-oracle-java-9-in-ubuntu-linux.html
    More info: https://launchpad.net/~webupd8team/+archive/ubuntu/java
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: keyring `/tmp/tmpa5dj4h41/secring.gpg' created
gpg: keyring `/tmp/tmpa5dj4h41/pubring.gpg' created
gpg: requesting key EEA14886 from hkp server keyserver.ubuntu.com
..........................................................................................

なお補足として、このPPAはすでにメンテナンスが終了しているため、近年のUbuntuバージョンではOpenJDKの利用、またはOracle公式サイトからの直接ダウンロードが推奨されています。

リポジトリを追加したら、次のコマンドでパッケージ一覧を更新します。

$ sudo apt-get update

Javaのバージョンを管理する

1台のサーバーに複数のJavaがインストールされているケースもあります。そんなときは、update-alternativesコマンドを使うことで、コマンドラインでデフォルトとして使用するJavaのバージョンを簡単に切り替えられます。

$ sudo update-alternatives --config java

実行すると、以下のような出力が表示されます。

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

Selection    Path                                              Priority   Status
------------------------------------------------------------
* 0          /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java     1081       auto mode
1            /usr/lib/jvm/java-6-oracle/jre/bin/java            1          manual mode
2            /usr/lib/jvm/java-7-oracle/jre/bin/java            2          manual mode
3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java     1081       manual mode
4            /usr/lib/jvm/java-8-oracle/jre/bin/java            3          manual mode
5            /usr/lib/jvm/java-9-oracle/bin/java                4          manual mode 

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

表示された一覧から、用途に応じて任意の番号を入力し、デフォルトで使用するJavaを選択してください。

JAVA_HOME環境変数を設定する

環境変数を設定するには、まずJavaがどのパスにインストールされているかを確認する必要があります。以下のコマンドを実行しましょう。

$ sudo update-alternatives --config java

出力結果から、使用したいインストール先のパスをコピーします。続いて、/etc/environmentファイルを編集用に開きます。

$ sudo nano /etc/environment

ファイルの末尾に、以下の形式で1行追加します。

JAVA_HOME="YOUR_JAVA_PATH"

具体的な記述例は以下のとおりです。

JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java"

編集が完了したらファイルを保存して閉じ、次のコマンドで変更内容をシステムに反映させます。

$ source /etc/environment

最後に、以下のコマンドを実行して、環境変数が正しく設定されているかどうかを確認しましょう。

$ echo $JAVA_HOME

この記事の手順を実践すれば、Ubuntu 16.04でapt-getを使ってJavaをインストールし、バージョン管理や環境変数の設定まで行えるようになります。当サイトでは今後もLinuxに関する便利なテクニックやTipsを紹介していきますので、ぜひお見逃しなく!

  1. UbuntuでDockerを使ってNextcloudとOnlyOfficeを統合インストールする方法

    現在、クラウドストレージの選択肢は数多くありますが、そのほとんどはデータを第三者の手に委ねることになります。Dropbox、Google Drive、OneDriveはいずれも、サービスを運営する企業を信頼することが前提となります。しかし幸いなことに、Nextcloudのようなソフトウェアを使えば、必ずしもそうする必要はありません。 NextcloudはOwnCloudプロジェクトをルーツに持つオープンソースソフトウェアで、もともとのDropboxに着想を得たファイル共有機能をはるかに超えて進化しています。データの保存はもちろん、OnlyOfficeを組み合わせれば、Google Docsの

  2. Windows 10 / 11 に Ubuntu をインストールする3つの方法【WSL・USB起動・仮想マシン】

    Windows 10 や Windows 11 のパソコンで Ubuntu Linux を使ってみたいと思ったことはありませんか?この記事では、その手順を初心者の方にもわかりやすく解説します。 実は、Windows 上で Ubuntu をインストールして動かす方法はひとつだけではありません。本記事では、代表的な3つのアプローチをご紹介します。① Windows Subsystem for Linux(WSL)を使って Linux コマンドを実行する方法、② USB メモリから直接起動する方法、そして③ 仮想マシン(VM)上で動かす方法です。 それぞれの特徴と手順を順番に見ていきましょう。 方法