RaspbianでJava 8を更新する方法


19

Raspberry Pi 3にはJavaバージョン1.8.0_65がインストールされています。を使用してそれを後のバージョンに更新できませんapt-getでした-Debianリポジトリがないことを前提としています。更新方法はわかりませんが、新しいバージョンをインストールしても既存のバージョンは置き換えられません。

RaspbianにJavaをインストール/更新し、今後も更新し続ける最善の方法は何ですか?


JRE / JDKの各コンポーネントに対してupdate-alternativesを呼び出すことを含む、かなり厄介なプロセスがあります。Oracleは、更新をダウンロードするためにサイトに手動でログインする必要があるため、自動更新サービスを提供していません。これがミッションクリティカルでない限り、デフォルトのRaspbian oracle-java8-jdk
scruss

@ traveling-tech-guy以下の回答のいずれかが質問に答えた場合は、そうマークしてください。別の方法で解決した場合は、ご自身の質問への回答を投稿してマークしてください。
not2qubit

@ not2qubit noneは、アンインストールして再インストールする必要がありました。2番目の回答に対する私のコメントを参照してください。
旅の技術者

回答:


10

常に最新のOracle Javaをインストールするために、現在のJavaを確認できます

pi @ raspberrypi:〜$ java -version java version "1.8.0_65" Java(TM)SE Runtime Environment(build 1.8.0_65-b17)Java HotSpot(TM)Client VM(build 25.65-b01、mixed mode)

OpenJDKを削除します

sudo apt-get purge openjdk*

デジタルキーを追加

sudo apt-key adv --recv-key --keyserver keyserver.ubuntu.com EEA14886

パケットソースを追加

sudo vim /etc/apt/sources.list

次の行を追加します

deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main
deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main

Java 8をインストール

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

古いJavaを削除する

sudo apt-get purge openjdk*
sudo apt-get purge java7*
sudo apt-get autoremove

成功を確認する

java -version

pi @ raspberrypi:〜$ java -version java version "1.8.0_131" Java(TM)SEランタイム環境(ビルド1.8.0_131-b11)Java HotSpot(TM)クライアントVM(ビルド25.131-b11、混合モード)


1
素晴らしい答え。コマンドapt-key長いダッシュで貼り付けられたことに気付くだけでしたが、ある時点で誤ってダブルダッシュを置き換えなければ--ならないため、コマンドが機能せず、奇妙なエラーが発生しましたgpg: conflicting commands。回答を編集して修正しました。
SWilk

2
これは、Rasbian Stretchでは機能しませんでした。gist.github.com/ribasco/fff7d30b31807eb02b32bcf35164f11fの指示は私のために働いた。
ケビンDoyon

sudo apt-get purge java7*削除されましたoracle-java8-jdk...
Cardinal System

3

hannes achとSWilkによる次のアドバイスは成功しましたが、次のエラーが表示されました。

pi@raspberrypi:~ $ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C2518248EEA14886 
Executing: /tmp/apt-key-gpghome.hVyJ3FPvDb/gpg.1.sh --recv-keys --keyserver keyserver.ubuntu.com C2518248EEA14886 
gpg: failed to start the dirmngr '/usr/bin/dirmngr': No such file or directory 
gpg: connecting dirmngr at '/tmp/apt-key-gpghome.hVyJ3FPvDb/S.dirmngr' failed: No such file or directory 
gpg: keyserver receive failed: No dirmngr

それを解決するために、私は走りました:

sudo apt-get install dirmngr --install-recommends

それから

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C2518248EEA14886

その後、すべてが期待どおりに機能しました。

ここから元の情報 https://blog.sleeplessbeastie.eu/2017/11/02/how-to-fix-missing-dirmngr/


1

今すぐ新しい機能が必要な場合は、次のようなバージョン9および10を入手できます。

wget https://github.com/bell-sw/Liberica/releases/download/10/bellsoft-jre10-linux-arm32-vfp-hflt.debsudo
apt install ./bellsoft-jre10-linux-arm32-vfp-hflt.deb

Raspberry Pi用Liberica:https : //www.bell-sw.com/java-for-raspberry-pi.html


0

まだこのガイドを試しましたか? http://elinux.org/RPi_Java#Installing_Java_on_Raspberry_Pi

OpenJDK

sudo apt-get update
sudo apt-get install openjdk-7-jdk

Oracle Java 8

wget http://www.java.net/download/JavaFXarm/jdk-8-ea-b36e-linux-arm-hflt-29_nov_2012.tar.gz
tar zxf jdk-8-ea-b36e-linux-arm-hflt-29_nov_2012.tar.gz
rm jdk-8-ea-b36e-linux-arm-hflt-29_nov_2012.tar.gz
sudo mv ./jdk1.8.0/ /opt/
sudo chown root:root -R /opt/jdk1.8.0/
sudo ln -s /opt/jdk1.8.0/ /opt/jdk8

編集sudo nano -w /etc/profileして追加

PATH="$PATH":/opt/jdk8/bin
JAVA_HOME=/opt/jdk8

java -version

Javaが機能しているかどうかを確認する


1
詳細な質問に感謝しますが、すでにJava 8がインストールされています。私の質問は、新しいバージョンへの更新に関するものです。
旅行

動作しません/usr/bin/java
。apt

3
これらは非常に古い指示であり、もはや有効ではありません
16

+1してopenjdkに切り替えます。可能な場合は7または8にします。単純なaptを使用するよりも、Oracle Webページから新しいリリースを手動でダウンロードするよりも、最新の状態を維持する方がはるかに簡単です。デフォルトのバージョンは簡単に切り替えることができ、sudo update-alternatives --config java; sudo update-alternatives --config java一度だけ実行する必要があります。
MadMike
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.