Wie installiere ich JDK 11 unter Ubuntu?

97

Java 11 ist also raus . Weiß jemand, wie man es (OpenJDK von Oracle) über die Kommandozeile installiert?

Ich würde gerne so etwas wie vorher für Oracle Java 10 sehen:

sudo add-apt-repository ppa:linuxuprising/java
sudo apt-get update
sudo apt-get install oracle-java10-installer

PS In der ähnlichen Frage vorgeschlagene Anweisung:

sudo apt-get install openjdk-11-jdk

funktioniert nicht

Dmitriy Dumanskiy
quelle
Welchen Fehler erhalten Sie, wenn Sie es versuchen sudo apt-get install openjdk-11-jdk?
Mureinik
5
Hier sind die "offiziellen" Installationsanweisungen für Linux. Es gibt ein RPM ( yum), oder Sie können manuell aus Archivbibliotheken installieren. Aber anscheinend apt-get(noch) kein Debian . F: Warum also nicht einfach von tar.gz installieren? Siehe auch Update-Alternativen
paulsm4
2
@ Mureinik "E: Paket openjdk-11-jdk konnte nicht gefunden werden" unter Ubuntu 16.04
Dmitriy Dumanskiy
1
@ Mureinik Im Moment installiert dieses Paket noch Java 10. Es wird in den nächsten Tagen aktualisiert. Ich gehe davon aus, Java 11 bereitzustellen.
Robert
5
@ Robert nächste Tage, nächste Wochen, nächste Monate ...
9ilsdx 9rvj 0lo

Antworten:

184

Jetzt ist es möglich, openjdk-11 folgendermaßen zu installieren:

sudo apt-get install openjdk-11-jdk

(Zuvor wurde openjdk-10 installiert, aber nicht mehr)

9ilsdx 9rvj 0lo
quelle
1
Ist das Oracle Build oder von adoptOpenJDK?
Dmitriy Dumanskiy
1
Eigentlich denke ich, dass es das Oracle OpenJDK ist. Ich denke, Debian / Ubuntu laden einfach den Tarball von der Oracle OpenJDK-Version herunter, fügen ein paar Patches hinzu und erstellen ihre Pakete.
andresp
9
Wenn Sie Java in keiner GUI-Umgebung verwenden, bevorzugen Sie möglicherweise die Installation openjdk-11-jdk-headless. Oder wenn Sie nur etwas ausführen und nicht kompilieren möchten, ist dies openjdk-11-jre[-headless]möglicherweise auch für Sie geeignet.
Piohen
10
Ich musste sudo add-apt-repository ppa:openjdk-r/ppazuerst ausführen , um das Repository hinzuzufügen.
Baumhai
2
Hier gilt das gleiche. Auch sudo apt-get updateum das Repository zu aktualisieren. Dann hat sudo apt-get install openjdk-11-jdkgearbeitet.
Michael
53

Um Openjdk 11 in Ubuntu zu installieren, haben die folgenden Befehle gut funktioniert.

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt install openjdk-11-jdk
Kaniyan
quelle
Auf Pi gibt mir der erste Befehl: aptsources.distro.NoDistroTemplateException: Fehler: Es konnte keine Verteilungsvorlage für Raspbian / Stretch gefunden werden
Nikolay Klimchuk
Arbeitete für mich füropenjdk-11-jdk-headless
WhyAyala
35

Für alle, die ein JDK unter Ubuntu ausführen und auf JDK11 aktualisieren möchten, würde ich die Installation über sdkman empfehlen . SDKMAN ist ein Tool zum Wechseln von JVMs, Entfernen und Aktualisieren.

SDKMAN ist ein Tool zum Verwalten paralleler Versionen mehrerer Software Development Kits auf den meisten Unix-basierten Systemen. Es bietet eine praktische Befehlszeilenschnittstelle (Command Line Interface, CLI) und eine API zum Installieren, Wechseln, Entfernen und Auflisten von Kandidaten.

Installieren Sie SDKMAN

$ curl -s "https://get.sdkman.io" | bash
$ source "$HOME/.sdkman/bin/sdkman-init.sh"
$ sdk version

Installieren Sie Java (11.0.3-zulu)

$ sdk install java
Kamal
quelle
1
Wow, etwas ähnliches wie Anaconda für Java? Wer würde denken!
Joshua Detwiler
Fehler: "Heruntergeladenes Zip-Archiv beschädigt. Sind Sie mit dem Internet verbunden?"
masterxilo
@masterxilo, können Sie bitte näher auf den Fehler eingehen, den Sie haben? Sicherlich benötigen Sie das Internet, um das SDKMAN-Tool herunterzuladen. Ich habe nur versucht, das SDKMAN-Tool auf der UNIX-Plattform zu installieren. Versuchen Sie es auf der Windows-Plattform?
Kamal
10

sudo apt-get installiere openjdk-11-jdk

Versuchen Sie es danach

Java-Version

Um sicherzustellen, dass die Java-Version 1.11.x ist, überprüfen Sie den folgenden Befehl, um die verfügbaren JDKS anzuzeigen.

sudo update-java-alternatives --list

Sie sollten so etwas wie unten sehen,

java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64

java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64

Sie können sehen, dass Java 1.11 in der obigen Liste verfügbar ist. Verwenden Sie den folgenden Befehl, um Java 11 auf den Standardwert zu setzen.

sudo update-alternatives --config java

Für den obigen Befehl erhalten Sie etwas wie den folgenden und fragen nach einer Option zum Festlegen von:

Es gibt 3 Möglichkeiten für das alternative Java (Bereitstellung von / usr / bin / java).

Prioritätsstatus des Auswahlpfads


0 / usr / lib / jvm / java-11-openjdk-amd64 / bin / java 1111 Auto-Modus

1 / usr / lib / jvm / java-11-openjdk-amd64 / bin / java 1111 manueller Modus

* 2 / usr / lib / jvm / java-8-openjdk-amd64 / jre / bin / java 1081 manueller Modus

3 /usr/lib/jvm/jdk1.8.0_211/bin/java 0 manueller Modus

Drücken Sie, um die aktuelle Auswahl [*] beizubehalten, oder geben Sie die Auswahlnummer ein:

Sie können die gewünschte Auswahlnummer auswählen, in meinem Fall ist es 0

für javac,

sudo update-alternatives --config javac

wird so etwas wie unten ergeben,

Es gibt 3 Möglichkeiten für den alternativen Javac (Bereitstellung von / usr / bin / javac).

Prioritätsstatus des Auswahlpfads


0 / usr / lib / jvm / java-11-openjdk-amd64 / bin / javac 1111 Automatikmodus

1 / usr / lib / jvm / java-11-openjdk-amd64 / bin / javac 1111 manueller Modus

* 2 / usr / lib / jvm / java-8-openjdk-amd64 / bin / javac 1081 manueller Modus
3 /usr/lib/jvm/jdk1.8.0_211/bin/javac 0 manueller Modus

Drücken Sie, um die aktuelle Auswahl [*] beizubehalten, oder geben Sie die Auswahlnummer ein:

In meinem Fall ist es wieder 0

Versuchen Sie es nach den obigen Schritten

Java-Version

es wird etwas wie unten angezeigt,

openjdk version "11.0.4" 2019-07-16

OpenJDK-Laufzeitumgebung (Build 11.0.4 + 11-post-Ubuntu-1ubuntu218.04.3)

OpenJDK 64-Bit-Server-VM (Build 11.0.4 + 11-nach-Ubuntu-1ubuntu218.04.3, gemischter> Modus, Freigabe)

So M
quelle
8

In Ubuntu können Sie Open JDK einfach mit den folgenden Befehlen installieren.

sudo apt-get update    
sudo apt-get install default-jdk

Sie können die Java-Version überprüfen, indem Sie dem Befehl folgen.

java -version

Wenn Sie Oracle JDK 8 installieren möchten, befolgen Sie die folgenden Befehle.

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

Wenn Sie die Java-Version wechseln möchten, können Sie die folgenden Methoden ausprobieren.

vi ~/.bashrcund fügen Sie die folgende Zeile hinzu export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_221(Pfad / JDK-Ordner)

oder

sudo vi /etc/profile und fügen Sie die folgenden Zeilen hinzu

#JAVA_HOME=/usr/lib/jvm/jdk1.8.0_221
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME
export JRE_HOME
export PATH

Sie können die andere Version kommentieren. Dies muss sich abmelden und wieder anmelden, um verwendet zu werden. Wenn Sie es unterwegs ausprobieren möchten, können Sie den folgenden Befehl im selben Terminal eingeben. Es wird nur die Java-Version für ein bestimmtes Terminal aktualisiert.

source /etc/profile

Sie können die Java-Version jederzeit per java -versionBefehl überprüfen .

Jagath Wijesinghe
quelle
2

Ich bin hierher gekommen, um nach der Antwort zu suchen, und da niemand den Befehl für das Orakel Java 11, sondern nur openjava 11 eingegeben hat, habe ich herausgefunden, wie es unter Ubuntu gemacht wird. Die Syntax lautet wie folgt:

sudo add-apt-repository ppa:linuxuprising/java
sudo apt update
sudo apt install oracle-java11-installer
P. Lion
quelle
7
Oracle JVM (Hotspot) ist für die Produktion nicht mehr kostenlos. Daher würde ich OpenJDK-Builds bevorzugen.
Dmitriy Dumanskiy
1
Leider habe ich das auch gebunden und es funktioniert nicht. Es heißt E: Paket oracle-java11-installer konnte nicht gefunden werden
Nditah
1

Ich habe ein Bash-Skript erstellt, das die in der verknüpften ähnlichen Frage beschriebene manuelle Installation im Wesentlichen automatisiert . Es erfordert die tar.gzDatei sowie ihren SHA256-Summenwert. Weitere Informationen und das Skript können Sie von meiner GitHub-Projektseite herunterladen . Es wird unter MIT-Lizenz bereitgestellt.

Jose Henriquez
quelle
1

Überprüfen Sie zuerst das default-jdkPaket, gute Chance, dass es Ihnen bereits eine bietet OpenJDK >= 11.
Ref: https://packages.ubuntu.com/search?keywords=default-jdk&searchon=names&suite=all§ion=all

Ubuntu 18.04 LTS +

Ab Ubuntu 18.04 LTS sollte es also in Ordnung sein.

sudo apt update -qq
sudo apt install -yq default-jdk

Hinweis: Vergessen Sie nicht einzustellen JAVA_HOME

export JAVA_HOME=/usr/lib/jvm/default-java
mvn -version

Ubuntu 16.04 LTS

Für Ubuntu 16.04 LTS wird nur openjdk-8-jdkin den offiziellen Repos bereitgestellt, sodass Sie es in einem ppa finden müssen :

sudo add-apt-repository -y ppa:openjdk-r/ppa
sudo apt update -qq
sudo apt install -yq openjdk-11-jdk

Hinweis: Vergessen Sie nicht einzustellen JAVA_HOME

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
mvn -version
Mizux
quelle