14.04 LTSにOpenJDK 8をインストールする方法は?


306

Java 8はhttp://openjdk.java.net/projects/jdk8/に従って利用できるようになりましたが、http://openjdk.java.net/install/にはOpenJDK 8(Oracle Javaではない)のインストール方法がまだ記載されていませんUbuntu 14.04長期サポート。(14.10以降では、単に実行しますapt-get install openjdk-8-jdk

どのように、いつこれを行うことができますか?

(2017-08-08:非常に短い答え: 2017-08-08時点のOpenJDK 8は、Ubuntu 14.04のAPTパッケージとして公式リポジトリから正式に入手できません。 この回答の完全な要約を参照してください

注:ここでは、Oracle Javaを使用します。ただし、私にとって最適なソリューションは、Ubuntuリポジトリから直接、楽にOracle Javaを使用できるようになるまで、UbuntuリポジトリのOpenJDKです。



1
自分でコンパイルする必要があります。:ここではどのようにあるgithub.com/hgomez/obuildfactory/wiki/...バージョン8 ;-)一致するファイル名を変更
Rinzwind

2
Azulは、「Zulu」という名前でOpenJDKビルドの提供を開始しました。このビルドは、ダウンロード、解凍、および自動的に使用できます。(彼らはサポートからお金を稼ぎます)。 azulsystems.com/products/zulu/downloads
するThorbjörnRavnアンデルセン

1
特に、信頼のためのapt-fastがホストされているのと同じPPAにはppa:saiarcot895/myppa、動作するopenjdk-8のバージョンがあります。肩をすくめる
ThorSummoner

時間が経つにつれて、最も簡単な解決策は、利用可能な場合、16.04 LTSを単純にアップグレードすることであると思われます。
トールビョーンラヴンアンデルセン

回答:


277

これを行うことができます。

最終更新

JDK

sudo apt-get install openjdk-8-jdk

JRE

sudo apt-get install openjdk-8-jre

古いアップデート

2つのリポジトリを見つけましたが、お勧めしません

  • OpenJDKビルド(すべてのアーキテクチャ)

    ppa:openjdk-r/ppa
  • 信頼のためのOpenJDK 8バックポート

    ppa:jochenkemnade/openjdk-8

オリジナルメッセージ

OpenJDKを本当に使用したい場合は、ソースからコンパイルする必要があります。OpenJDK用のPPAはまだありません。

https://bugs.launchpad.net/ubuntu/+bug/1297065でリクエストされてい ます

Webup8 Oracle Java8 Installerを使用することをお勧めします

sudo add-apt-repository ppa:webupd8team/java -y
sudo apt-get update
sudo apt-get install oracle-java8-installer

Java 8環境変数を自動的にセットアップするには

sudo apt-get install oracle-java8-set-default

確認してください

java -version

そのため、OpenJDK8の使用を待つ必要があります


8
@JohnMerlino私の推測では、PPAは新しいバージョンがリリースされたときに自動更新を許可します。
トールビョーンラヴンアンデルセン14年

7
openjdk-8は現在U​​topicにあります。 bugs.launchpad.net/ubuntu/+source/openjdk-8/+bug/1341628は、LTSである14.04にバックポートするように引き上げられました。
ThorbjørnRavn Andersen 14

56
新しい編集が必要な理由 まだ14.04リポジトリにないようで、sudo apt-get install openjdk-8-jdk少なくとも私には機能しません。
xji

17
2016-01-11現在、OpenJDK 8はまだバックポートに上陸していないため、非公式のUbuntu PPAが必要です。他の人がそうであるように見えても、私はこれが私の質問に対する答えであるとは思わない。
トールビョールンラヴンアンデルセン

8
この回答は不完全であるため非常に誤解を招く可能性があり、言及されたPPAを推奨しないが、それなしでは機能しないと述べています。
Reinierポスト

176
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk
sudo update-alternatives --config java
sudo update-alternatives --config javac

7
このリポジトリには日付があります。現在、openjdk 1.8の最新リリースは66です。このリポジトリで利用可能なバージョンは45です
。– mattm

ppa.launchpad.net/openjdk-r/ppa/ubuntu/pool/main/o/openjdk-8/…の取得に失敗しました 502 apt-cacher:libcurlエラー:ピアからデータを受信中にエラーが発生しました
Rajesh Hatwar

1
これらは正しい最小限の手順です。4と5はオプションであり、おそらく必要ではありません。
エア

Ubuntu 14.04で動作しないE: Package 'openjdk-8-jdk' has no installation candidate
ナイーブ

Jenkinsをアップグレードするときにこれが機能しました(新しいバージョンにはJava8が必要で、システムにはJava7のみがインストールされていました)。注目すべきは、Jenkinsを適切に動作させるために4行目が重要だったことです。それを実行するまで、私は取得し続けましたJenkins requires Java8 or later, but you are running 1.7.0_121-b00 from /usr/lib/jvm/java-7-openjdk-amd64/jre。賛成票を持っています...できればもっとあげます。
ドクターJ

62

OpenJDK 8は2014年3月にリリースされました。この質問の時点で、Ubuntuリリースの公式UbuntuリポジトリにはOpenJDK 8パッケージはありません。JDK 8のプロジェクトページにあるように、「まもなく利用可能になる」と定義されています。

まず、OpenJDK 8パッケージはUbuntu開発リリースに含まれます。これは14.10の開発サイクル中に発生する可能性がありますが、私が知る限り、決まったスケジュールはありません。いくつかのプレビューパッケージがビルドされており、テストに利用できます。debian -javaおよびUbuntu openjdkメーリングリストの発表をご覧ください。ある時点で、これらのパッケージはDebianおよびUbuntu開発リポジトリにアップロードされます。

OpenJDK 8がUbuntu開発バージョンになったら、14.04にバックポートすることを要求できる場合があります。プライマリtrustyリポジトリで使用できることはありませんが、使用すると、trusty-backportsある時点でそこからインストールできる場合があることに注意してください。Ubuntu バックポートをリクエストするプロセスについては、こちらをご覧ください


4
私はあなたの質問に「どのように、いつ」あなたが望むように見える制約で答えようとしました:公式リポジトリからのものでなければならず、OpenJDKでなければならず、14.04 LTSリリースでなければなりません。
マイクミラー

30
2016年2月、java 8はUbuntu 14.04 LTSではまだ利用できません。これは残念です。
Bhavin道志

2
これは、2016年4月、まだJavaの8 ...だ
シュテファン・ヘニングセン

3
Ubuntu 16.04は2016年4月にリリースされ、OpenJDK 8が搭載されます。
マイクミラー

8
2016年9月であり、Ubuntu 14.04 LTSは2019年まで引き続きサポートされます...そして、大規模な変更(たとえばsystemd)のために多くの場所が16.04を採用するのに長い時間がかかるため、Java 8が簡単ではないのは残念です14.04のaptを介してインストールします:(
geerlingguy

34

注–これは14.10以降でのみ機能します。

1年遅れですが、今日のようにapt-getで期待どおりに動作します。

JDKをインストールする場合:

$ sudo apt-get install openjdk-8-jdk

JREをインストールする場合:

$ sudo apt-get install openjdk-8-jre

デフォルトのJDKを設定する方法

最速の方法

実行$ sudo update-alternatives --config javaして、使用するJDKの番号を選択します。

第二の方法

利用可能なJDKをリストします。

$ update-java-alternatives -l
java-1.7.0-openjdk-amd64 1071 /usr/lib/jvm/java-1.7.0-openjdk-amd64
java-1.8.0-openjdk-amd64 1069 /usr/lib/jvm/java-1.8.0-openjdk-amd64

次に、Open JDK 8の場所をコピーして貼り付け、以下のコマンドに一致させます。

$ sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64

3
sudo apt-get updateの後、Linux 14.04でまだJDK 6および7のみが表示され、openjdk-8-jdkは表示されません。特別なリポジトリを追加しましたか?信頼できるバックポートを有効にしました。
akauppi

2
14.10または15.04を実行していると思いますか?
akauppi

1
14.04 LTSで再現できません。これがバージョンであることを確認してください。
トールビョールンラヴンアンデルセン

1
@akauppiあなたは正しいです!! 14.10。を実行しています。ご不便をおかけして申し訳ありませんが、回答を削除する必要がありますか?
カラカ

1
削除したくない-一部の人にとっては、14.04の代わりに14.10を使用するのが完全に良い代替案かもしれません。
-akauppi

22

以下は、Ubuntu 14.04 LTSで最初からOracle Java 7およびJava 8をセットアップするために使用するものです(注:OpenJDKではありません)。

apt-get -y -q update
apt-get -y -q upgrade
apt-get -y -q install software-properties-common htop
add-apt-repository ppa:webupd8team/java
apt-get -y -q update
echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
apt-get -y -q install oracle-java8-installer
apt-get -y -q install oracle-java7-installer
update-java-alternatives -s java-8-oracle

これは無人であり、Vagrantプロビジョニングブロックに含めるのに適しています。私はより詳細な要点を持っていますhttps : //gist.github.com/tinkerware/cf0c47bb69bf42c2d740

編集:これにより、OracleのJDKのライセンスが自動的に受け入れられます。実行する前に、まずそれで問題ないことを確認してください。


1
いいね。ただし、ルートアクセスを取得する部分はありません。まだいい答えです。
MadMike

1
右; これをVagrantでvagrant使用します。Vagrantはpasswordlessでユーザーをセットアップしますsudo
カガタイ

5
これはOracle Javaであり、OpenJDK Javaではありませんでした。また、エコー行は、インストーラーからのライセンス受諾の質問を回避することに注意してください。
トールビョールンラヴンアンデルセン

3
@ThorbjørnRavnAndersenはい、私は質問がOpenJDKに関するものであることに気付きました。私の方法は、Oracle Javaをインストールするためのものだと特に言いました。これは関連性がないと主張するかもしれませんが、14.04 LTSでJava 7/8を実行できるランタイムを取得する代替手段に注目することには価値があると思います。ライセンス受け入れ質問の「回避」は、興味深い言葉の選択です。スクリプトを実行する前にOracleライセンスを読む必要があります。これにより、インストール中の受け入れが自動化されます。
カガタイ

3
ありがとう@Cagatay !! この答えは私にとって非常に役に立ちました。Vagrantを使用したJava 8のインストールを探していました。
ソチール

14

2017-08-08の時点で、この質問とその回答は、問題を理解するために掘り下げるのに少し圧倒されるようになったことがわかったので、この回答で調査結果をまとめました。

非常に短い答えは、2017-08-08の時点でのOpenJDK 8はUbuntu 14.04では公式に利用できないということです

ただし、使用可能なオプションは多数あります。

  • Ubuntuの新しいバージョンにアップグレードします。OpenJDK 8は14.10以降で利用可能です。(16.04 LTS以降のOpenJDK 9以降、18.04 LTS以降のOpenJDK 11)
  • http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmlからOracle Java(OpenJDKではない)をtar.gzファイルとして手動でダウンロードしてインストールしますbinディレクトリを$PATH変数に追加する前に受け入れられたライセンス。サードパーティのPPAを使用することもできます。Oracle Javaは、予見可能な将来(Java 11前後)の有料顧客のみを対象としていることに注意してください。
  • サードパーティのPPAを使用してOpenJDK 8をダウンロードします。
  • http://www.azul.com/downloads/zulu/zulu-linux/(DEB)からOpenJDK 8のAzul認定ビルドをダウンロードします。
  • ソースをコンパイルし、自分でインストールします。

詳細については、他の回答をご覧ください。

パーソナルパッケージアーカイブ(PPA)は、通常、個人が任意で作成することに注意してください。内容は古くなっているか、警告なしに消える可能性があります。

個人的には、Ubuntuを18.04 LTSにアップグレードするか、できなければAzulビルドをダウンロードすることをお勧めします。


注:14.04にバックポートされたOpenJDK 8が引き続き必要な場合は、ログインして、上部の[あなたに影響します]をクリックしてこのバグに投票してくださいhttps : //bugs.launchpad.net/ubuntu/+source/openjdk-8/ +バグ/ 1368094


5

2016年4月22日以降、Vividのパッケージは削除されました。packages.ubuntu.comのニュースアイテム:「ゼニアルリリースを反映し、yakketyを追加し、鮮明に削除します」。この答えの回避策は賢明ですが、現在の状況では適用できません。2017年1月6日の時点で、信頼できるpackages.ubuntu.com/trusty-backports/javaにはJava 8のバックポートはまだありません。変更が適用されるので編集してください。


Android公式サイトの回答をご覧ください

https://source.android.com/source/initializing.html

Ubuntu 14.04でサポートされている利用可能なOpenJDK 8パッケージはありません。Ubuntu 14.04では、Ubuntu 15.04 OpenJDK 8パッケージが正常に使用されています。新しいパッケージバージョン(15.10、16.04など)は、以下の手順を使用して14.04で動作しないことが判明しました。

http://packages.ubuntu.com/vivid/openjdk-8-jdkからアーキテクチャの.debパッケージをダウンロードします:
openjdk-8-jre-
headless openjdk-8-jre
openjdk-8-jdk

マシンのアーキテクチャは次の方法で取得できます。

$ uname -m    

x86_64は64ビット(amd64)Linuxカーネルアーキテクチャを表し、i386 / i486 / i586 / i686は32ビット(i386)システムを表します。

オプションで、http://packages.ubuntu.com/vivid/openjdk-8-jdkにある情報を使用して、ダウンロードしたファイルのチェックサムを確認します。

たとえば、sha256sumツールの場合:

$ sha256sum {package file}    

パッケージをインストールします。

$ sudo apt-get update    

ダウンロードした各.debファイルに対してdpkgを実行します。依存関係がないためにエラーが発生する場合があります。

$ sudo dpkg -i {downloaded.deb file}    

不足している依存関係を修正するには:

$ sudo apt-get -f install    

4

私はここで投票したところです。今では、openjdk-8をubuntu-14.04にバックポートすることに関心がある733人です。

私が見つかりました。このPPAのリポジトリがかなりuptodateです

うまくいけば有望です!?

そしてそれは私のために働いた。次のコマンドを使用して、ubuntu-14.04にopenjdk-8-jdkをインストールできました。

sudo add-apt-repository ppa:jonathonf/openjdk
sudo apt-get update
sudo apt-get install openjdk-8-jdk

ここに私のjava -version出力があります:

openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-1~14.04.york0-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)

ここに私のuname -a出力があります:

Linux mars1 4.4.0-75-generic #96~14.04.1-Ubuntu SMP Thu Apr 20 11:06:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

ここに私のlsb_release -a出力があります:

Distributor ID: Ubuntu
Description:    Ubuntu 14.04.5 LTS
Release:        14.04
Codename:       trusty

私のvirtual-host-server-providerは、Ubuntu-14.04のサポートのみを提供していると言っており、2019年までこのように続けたいと思っています!あなたはubuntu-14.04でopenjdk-8を持つためのより良い方法を知っているなら私に知らせてください?

ありがとう!


Azul Zuluの使用をお勧めします。 azul.com/downloads/zulu
するThorbjörnRavnアンデルセン

私はそれを機能させるために以下を実行しなければなりませんでした:sudo update-java-alternatives --jre --set java-1.8.0-openjdk-amd64そしてsudo update-java-alternatives --jre-headless --set java-1.8.0-openjdk-amd64
-champost

2

Nixパッケージマネージャーは、Ubuntu用のOpenJDK 8のバイナリパッケージも保持します。つまり、動作するJava 8コンパイラーを5分未満で開始して終了できます(もちろん、高速インターネット接続が必要です)。

手順は次のとおりです。

  1. Nixパッケージマネージャーをインストールします(https://www.domenkozar.com/2014/01/02/getting-started-with-nix-package-manager/):$ bash <(curl https://nixos.org/nix/install)

  2. シェルを実行し、インストールの最後にNixが指示する1行のライナー: $ . ~/.nix-profile/etc/profile.d/nix.sh

  3. OpenJDK Nixパッケージをインストールします。 $ nix-env -i openjdk

  4. 確認javac$ javac -version

それでおしまい。ああ、そしてあなたはあなたのステップ2からのワンライナーを必ず入れたいと思うでしょう~/.bashrc。これにより、インストールされているパッケージを適切にリンクするようにNixに指示します(実際のファイルは非標準ディレクトリに保持されるため)。


1
好奇心から-apt-get以外に追加のパッケージマネージャーが必要なのはなぜですか?
トールビョーンラヴンアンデルセン

2
@ThorbjørnRavnAndersen-特定の理由は、OpenJDK 8を最小限の痛みですばやく入手することであり、一般的な理由は、Nixがapt-getおよびその他の古いパッケージマネージャーに対する革新的な改善であるということです。
ヤワー

OpenJDK専用ではなく、一般的なケースでお願いしています。新しいパッケージマネージャーを導入して既存のエコシステムを使用しないことを上回る非常に大きな理由があるに違いありません。
トールビョールンラヴンアンデルセン

1
@ThorbjørnRavnAndersen-一般的なケースでNixを推奨する非常に良い理由があります。私が述べたように、それは革命的な改善です。svn上のgitの規模で。詳細については、infoq.com / articles / configuration-management-with-nixをご覧ください。
ヤワー

2

ランダムなPPAではなく、公式のDebianリポジトリからOpenJDK 8を取得しています。以下がその方法です。

sudo apt-get install debian-keyring debian-archive-keyring

作る/etc/apt/sources.list.d/debian-jessie-backports.list

deb http://<httpredir>.debian.org/debian/ jessie-backports main

<httpredir>近くのミラーのプレフィックスで変更する場所(https://www.debian.org/mirror/listを参照)

作る/etc/apt/preferences.d/debian-jessie-backports

Package: *
Pin: release o=Debian,a=jessie-backports
Pin-Priority: -200

最後にインストールを行います:

sudo apt-get update
sudo apt-get -t jessie-backports install openjdk-8-jdk

この答えは私にはうまくいきません。openjdk-8-jdk望んでいるopenjdk-8-jreことを望んでいますlibjpeg62-turboapt後者によれば、「インストール不可」、またはより詳細には「利用可能ではないが、別のパッケージによって参照されている。これは、パッケージが欠落している、廃止されている、または別のソースからのみ利用できる」ことを意味します-したがって、私が持っているリポジトリから。追いかけが広すぎて賢くならない
XavierStuvw

1

実際には、ソースから直接Java 8を自分でビルドすることも簡単です...怖いですか?それは本当に驚くほど簡単で、真剣に文字通り約15分かかりますhttp://blog2.vorburger.ch/2014/06/build-で説明したように、https://github.com/hgomez/obuildfactory/ます。your-own-jdk-at-home.html


1
建物は一つです。TCKはどうですか?
トールビョーンラヴンアンデルセン14年

1
@ThorbjørnRavnAndersen私にはわからない。個人のエンドユーザーにとって、自己構築はすでに有用です。徹底的にテストされたパッケージを実際に準備するということは、おそらく別の話です...私はあなた以外何も知らないのではないかと心配しています。私はただ周りを見て、openjdk.java.net / groups / conformance / JckAccessを見つけました、あなたはそれを見ましたか?
vorburger 14年

1

2016年3月11日に更新し、これらをルートとして実行します。

apt-get update
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DA1A4A13543B466853BAF164EB9B1D8886F44E2A
touch /etc/apt/sources.list.d/openjdk.list
echo "deb http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main " >>/etc/apt/sources.list.d/openjdk.list
echo "deb-src http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main" >>/etc/apt/sources.list.d/openjdk.list
apt-get update
apt-get -y install openjdk-8-jdk
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
echo "$JAVA_HOME"

2
最初の行は必要ありません。次の4行はと同等add-apt-repository ppa:openjdk-r/ppaです。この答えも古いものの複製です。
ポールステリアン16

1
要約すると(2017-05-02現在)、これが私にとって有効なものです。sudo add-apt-repository -y ppa:openjdk-r/ppa; sudo apt-get update; sudo apt-get install -y openjdk-8-jdk
ツングシンデビッドウォン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.