Frage Wie installiere ich OpenJDK 8 auf 14.04 LTS?


(2017-08-08: Frage gereinigt und zusammengefasst in eine neue Antwort)

Java 8 ist jetzt verfügbar nach http://openjdk.java.net/projects/jdk8/, aber http://openjdk.java.net/install/ erwähnt noch nicht, wie man OpenJDK 8 (nicht Oracle Java) unter Ubuntu 14.04 Long Term Support installiert. (Für 14.10 und später einfach laufen apt-get install openjdk-8-jdk)

Wie und wann kann das gemacht werden?

(Fürs Erste werden wir Oracle Java verwenden - die optimale Lösung für mich ist jedoch OpenJDK aus den Ubuntu-Repositories, bis Oracle Java direkt und mühelos aus den Ubuntu-Repositories verfügbar ist)



283
2018-05-12 11:00


Ursprung


Sie müssen es selbst kompilieren. Hier ist, wie: github.com/hgomez/obuildfactory/wiki/... Ändern Sie den Dateinamen, um Version 8 zu entsprechen ;-) - Rinzwind
Azul hat begonnen, OpenJDK-Builds unter dem Namen "Zulu" bereitzustellen, die heruntergeladen, entpackt und automatisch verwendet werden können. (Sie verdienen ihr Geld von der Unterstützung). azulsystem.com/produkte/zulu/downloads - Thorbjørn Ravn Andersen
Bemerkenswert ist, dass derselbe ppa, auf den apt-fast für trusty gehostet wird, ppa:saiarcot895/myppa, hat eine Version von openjdk-8, die funktioniert. zucken - ThorSummoner
Im Laufe der Zeit scheint es, dass die einfachste Lösung darin besteht, 16.04 LTS zu opfern, wenn sie verfügbar ist. - Thorbjørn Ravn Andersen
Und openjdk-9-jdk ist in 16.04 LTS :) (wahrscheinlich nur ein Platzhalter) - Thorbjørn Ravn Andersen


Antworten:


Sie können dies tun für;

Letzte Aktualisierung

JDK

sudo apt-get install openjdk-8-jdk

JRE

sudo apt-get install openjdk-8-jre

Altes Update

Ich habe zwei Repository gefunden, aber ich empfehle es nicht

  • OpenJDK erstellt (alle Archs)

    ppa:openjdk-r/ppa
    
  • OpenJDK 8 Backport für trusty

    ppa:jochenkemnade/openjdk-8
    

originale Nachricht

Wenn Sie wirklich OpenJDK verwenden möchten, müssen Sie kompilieren aus der Quelle. Es gibt noch keine PPA für OpenJDK.

Es wurde angefordert an https://bugs.launchpad.net/ubuntu/+bug/1297065

Ich empfehle Ihnen zu verwenden Webup8 Oracle Java8 Installer

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

Zum automatischen Einrichten der Java 8-Umgebungsvariablen

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

prüfen Sie

java -version

Sie müssen also warten, bis Sie OpenJDK8 verwenden


259
2018-05-12 16:49



@JohnMerlino meine Vermutung wäre, dass die PPA automatische Updates ermöglicht, wenn neue Versionen veröffentlicht werden. - Thorbjørn Ravn Andersen
openjdk-8 ist jetzt in Utopic. bugs.launchpad.net/ubuntu/+source/openjdk-8/+bug/1341628 wurde zum Backport auf 14.04 angehoben, da es LTS ist: - Thorbjørn Ravn Andersen
Warum die neue Bearbeitung? Es scheint immer noch nicht im 14.04 Repo zu sein und sudo apt-get install openjdk-8-jdk funktioniert zumindest nicht für mich. - xji
Ab dem 2016-01-11 werden die nicht offiziellen Ubuntu PPA's noch benötigt, da OpenJDK 8 noch nicht in Backports gelandet ist. Ich halte das nicht für eine Antwort auf meine Frage, auch wenn es scheint, dass andere es tun. - Thorbjørn Ravn Andersen
Diese Antwort ist in hohem Maße irreführend, weil sie unvollständig ist, sie sagt, dass sie die erwähnte PPA nicht empfiehlt, aber ohne sie nicht funktionieren wird. - Reinier Post


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

166
2017-08-27 15:25



Dieses Repository ist datiert; Die neueste Version von openjdk 1.8 ist heute 66. Die in diesem Repository verfügbare Version ist 45. - mattm
Fehler beim Abrufen ppa.launchpad.net/openjdk-r/ppa/ubuntu/pool/main/o/openjdk-8/...  502 apt-cacher: libcurl error: Fehler beim Empfang von Daten vom Peer - Rajesh Hatwar
Dies sind die richtigen minimalen Schritte. 4 und 5 sind optional und möglicherweise nicht erforderlich. - Air
Nicht für Ubuntu 14.04 E: Package 'openjdk-8-jdk' has no installation candidate - Naive
Dies funktionierte für mich beim Upgrade von Jenkins (neuere Version benötigt Java8, mein System hatte nur Java7 installiert). Bemerkenswert ist, dass die vierte Zeile wichtig war, um Jenkins dazu zu bringen, sich richtig zu verhalten; bis es lief, bekam ich weiter Jenkins requires Java8 or later, but you are running 1.7.0_121-b00 from /usr/lib/jvm/java-7-openjdk-amd64/jre. Habe eine Aufwertung ... Ich würde dir mehr geben, wenn ich könnte. - Doktor J


OpenJDK 8 wurde im März 2014 veröffentlicht. Zum Zeitpunkt dieser Frage gibt es keine OpenJDK 8-Pakete in den offiziellen Ubuntu-Repositories für irgendein Ubuntu-Release. Sie werden "bald verfügbar sein", wie die JDK 8 Projektseite sagt, für eine Definition von bald.

Erstens werden die OpenJDK 8-Pakete in der Ubuntu-Entwicklungsversion landen. Dies kann während des 14.10 Entwicklungszyklus passieren, aber es gibt keinen festgelegten Zeitplan, soweit ich weiß. Einige Vorschaupakete wurden erstellt und stehen zum Testen zur Verfügung, siehe die Ankündigung auf der Debian-Java und Ubuntu openjdk Mailinglisten. Irgendwann werden diese Pakete in die Entwicklungsdepots von Debian und Ubuntu hochgeladen.

Sobald sich OpenJDK 8 in der Ubuntu-Entwicklungsversion befindet, kann möglicherweise eine Rückportierung auf 14.04 angefordert werden. Beachten Sie, dass es in der Primärdatenbank niemals verfügbar sein wird trusty Repository, aber wenn Sie verwenden trusty-backports dann kann es von dort irgendwann installiert werden. Lesen Sie über den Prozess zum Anfordern von Backports in Ubuntu Hier.


62
2018-05-13 12:52



Ich habe versucht, Ihre Frage "Wie und wann" mit den Einschränkungen zu beantworten, die Sie zu haben scheinen: Sie müssen von offiziellen Repositories stammen, müssen OpenJDK sein und müssen die Version 14.04 LTS sein. - Mike Miller
Sein Feb 2016, und Java 8 ist immer noch nicht verfügbar auf Ubuntu 14.04 LTS. Das ist enttäuschend. - Bhavin Doshi
Es ist April 2016, noch kein Java 8 ... - Stephan Henningsen
Ubuntu 16.04 erscheint im April 2016, wird es haben OpenJDK 8. - Mike Miller
Es ist September 2016, und Ubuntu 14.04 LTS wird noch bis 2019 unterstützt ... und viele Orte werden aufgrund von größeren Änderungen (zB systemd) sehr lange brauchen, um 16.04 zu übernehmen, also ist es immer noch enttäuschend, java 8 nicht einfach zu finden über apt am 14.04 installieren :( - geerlingguy


Hinweis - Dies funktioniert nur mit 14.10 oder später:

1 Jahr zu spät, aber heute funktioniert es wie erwartet mit apt-get.

Zum Installieren von JDK:

$ sudo apt-get install openjdk-8-jdk

Zur Installation von JRE:

$ sudo apt-get install openjdk-8-jre

So legen Sie das Standard-JDK fest

Schnellste Weg

Lauf $ sudo update-alternatives --config java und geben Sie die Nummer ein, für die JDK Ihrer Wahl verwenden soll.

Zweiter Weg

Liste die verfügbaren JDKs auf:

$ 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

Kopieren und fügen Sie nun den Speicherort von Open JDK 8 ein, um dem folgenden Befehl zu entsprechen:

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

33
2018-04-17 19:04



Ich sehe immer noch nur JDKs 6 und 7, keine openjdk-8-jdk auf meinem Linux 14.04, nach sudo apt-get update. Hast du ein spezielles Repository hinzugefügt? Ich habe vertrauenswürdige Backports aktiviert. - akauppi
Ich glaube, du liegst am 14.10 oder am 15.04, oder? - akauppi
Ich kann auf 14.04 LTS nicht reproduzieren. Bitte bestätigen Sie, dass dies die Version ist. - Thorbjørn Ravn Andersen
@akauppi du hast Recht !! Ich renne 14.10. Entschuldigung für die Unannehmlichkeiten, sollte ich meine Antwort entfernen? - caraca
Ich würde nicht wollen, dass es entfernt wird - für einige könnte die Verwendung von 14.10 anstelle von 14.04 eine vollkommen gute Alternative sein. - akauppi


Hier ist, was ich verwende, um Oracle Java 7 und Java 8 [Anmerkung: nicht OpenJDK] von Grund auf Ubuntu 14.04 LTS einzurichten:

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

Dies ist unbeaufsichtigt und eignet sich für die Aufnahme in einen Vagrant-Bereitstellungsblock; Ich habe einen Kern mit mehr Details: https://gist.github.com/tinkerware/cf0c47bb69bf42c2d740

EDIT: Dies wird Oracle-Lizenz für das JDK automatisch akzeptieren; stellen Sie sicher, dass Sie damit einverstanden sind, bevor Sie es ausführen.


21
2018-01-16 01:35



Sieht gut aus. Aber es fehlt der Teil, wo Sie Root-Zugriff erhalten. Immer noch nette Antwort. - MadMike
Recht; Ich benutze dies mit Vagrant, der die vagrant Benutzer mit Passwortlos sudo. - Cagatay
Das ist Orakel Java, nicht OpenJDK Java, worum ging es in der Frage? Beachten Sie auch, dass die Echoleitungen die Frage der Lizenzübernahme vom Installationsprogramm durchlaufen. - Thorbjørn Ravn Andersen
@ ThorbjørnRavnAndersen Ja, ich habe bemerkt, dass die Frage über OpenJDK war; Ich habe speziell gesagt, dass meine Methode für die Installation von Oracle Java ist. Sie können argumentieren, dass dies nicht verwandt ist, aber ich denke, es gibt einen Wert, wenn Sie eine Alternative notieren, die Ihnen immer noch eine Laufzeit bringt, die Java 7/8 auf 14.04 LTS ausführen kann. "Umgehung" der Lizenzakzeptanzfrage ist eine interessante Wortwahl; Ich würde sagen, dass man vor dem Ausführen des Skripts die Oracle-Lizenz lesen sollte, was die Akzeptanz während der Installation automatisiert. - Cagatay
Danke @Cagatay !! Diese Antwort war sehr nützlich für mich, ich habe Java 8 Installation mit Vagrant gesucht. - Sotsir


Ab 2017-08-08 fand ich, dass diese Frage und ihre Antworten ein wenig überwältigend geworden waren, um das Problem zu verstehen, also habe ich die Ergebnisse in dieser Antwort zusammengefasst.

Die sehr kurze Antwort ist das OpenJDK 8 ab dem 08.08.2017 ist nicht offiziell für Ubuntu 14.04 verfügbar.

Es gibt jedoch viele Möglichkeiten:

  • Upgrade auf eine neuere Version von Ubuntu. OpenJDK 8 ist ab 14.10 verfügbar. (OpenJDK 9 ab 16.04 LTS, OpenJDK 11 ab 18.04 LTS)
  • Downloaden und installieren Sie Oracle Java (nicht OpenJDK) von http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html manuell als tar.gz-Datei, die lediglich entpackt werden muss und die Lizenz vor dem Download akzeptiert bin Verzeichnis kann zu Ihrem hinzugefügt werden $PATH Variable. Sie können sich auch dafür entscheiden, eine PPA eines Drittanbieters zu verwenden. Beachten Sie, dass Oracle Java nur dazu dient, Kunden in der vorhersehbaren Zukunft zu bezahlen (in der Nähe von Java 11).
  • Laden Sie OpenJDK 8 mit einem PPA eines Drittanbieters herunter.
  • Laden Sie einen von Azul zertifizierten Build von OpenJDK 8 herunter http://www.azul.com/downloads/zulu/zulu-linux/ (DEB)
  • Kompiliere die Quelle und installiere sie selbst.

Siehe andere Antworten für Details.

Beachten Sie, dass persönliche Paketarchive (PPA) in der Regel von Einzelpersonen auf freiwilliger Basis erstellt werden. Die Inhalte sind möglicherweise veraltet oder gehen ohne Vorwarnung verloren.

Persönlich würde ich empfehlen, Ubuntu auf 18.04 LTS zu aktualisieren, oder, wenn nicht möglich, einen Azul-Build herunterzuladen.


Hinweis: Wenn Sie OpenJDK 8 noch auf 14.04 zurückportieren müssen, stimmen Sie für diesen Fehler ab, indem Sie sich anmelden und oben auf "Beeinflusst" klicken: https://bugs.launchpad.net/ubuntu/+source/openjdk-8/+bug/1368094


11
2017-08-08 15:23





Hinweis Seit dem 22. April 2016 wurden die Pakete für Vivid leider entfernt. Nachrichtenartikel in packages.ubuntu.com: "Xenialfreilassung reflektieren, addieren yakkety, löschen klar". Die Umgehung dieser Antwort ist schlau, aber in der aktuellen Situation nicht mehr anwendbar. Ab dem 6. Januar 2017 gibt es noch keinen Backport für Java 8 auf trusty packages.ubuntu.com/trusty-backports/java. Bitte bearbeiten Sie, wie die Änderungen gelten.


Siehe die Antwort von Android offiziellen Website

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

Es gibt keine verfügbaren unterstützten OpenJDK 8-Pakete für Ubuntu 14.04. Die Pakete Ubuntu 15.04 OpenJDK 8 wurden erfolgreich mit Ubuntu 14.04 verwendet. Neuere Paketversionen (z. B. jene für 15.10, 16.04) wurden mit den folgenden Anweisungen nicht auf 14.04 getestet.

Laden Sie die .deb-Pakete für Ihre Architektur herunter http://packages.ubuntu.com/vivid/openjdk-8-jdk:
    openjdk-8-jre-kopflos
openjdk-8-jre
    openjdk-8-jdk

Denken Sie daran, dass Sie die Architektur für Ihre Maschine erhalten können mit:

$ uname -m    

x86_64 steht für eine 64-Bit (amd64) Linux Kernel-Architektur und i386 / i486 / i586 / i686 für ein 32-Bit (i386) System.

Optional, bestätigen Sie die Prüfsummen der heruntergeladenen Dateien mit den Informationen auf http://packages.ubuntu.com/vivid/openjdk-8-jdk.

Zum Beispiel mit dem Werkzeug sha256sum:

$ sha256sum {package file}    

Installieren Sie die Pakete:

$ sudo apt-get update    

Führen Sie dpkg für jede der heruntergeladenen .deb-Dateien aus. Es kann zu Fehlern aufgrund fehlender Abhängigkeiten führen:

$ sudo dpkg -i {downloaded.deb file}    

Um fehlende Abhängigkeiten zu beheben:

$ sudo apt-get -f install    

5
2018-02-25 00:53





Ich habe gerade abgestimmt Hier und jetzt sind wir 733 Leute, die uns daran interessiert sind, openjdk-8 zu ubuntu-14.04 zu portieren.

ich fand Dieses PPA-Repository ist ziemlich aktuell

 und hoffentlich viel versprechend !?

und es hat für mich funktioniert. Ich war erfolgreich, openjdk-8-jdk auf ubuntu-14.04 mit folgenden Befehlen zu installieren:

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

und hier ist mein java -version Ausgabe:

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)

und hier ist mein uname -a Ausgabe:

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

und hier ist mein lsb_release -a Ausgabe:

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

Mein Virtual-Host-Server-Provider sagt mir, dass sie nur Ubuntu-14.04 unterstützen und ich vermute, dass sie bis 2019 so weitermachen wollen! Bitte lassen Sie mich wissen, wenn Sie einen besseren Weg für Openjdk-8 auf Ubuntu-14.04 wissen?

Vielen Dank!


4
2018-05-09 20:09



Ich würde Azul Zulu empfehlen. azul.com/downloads/zulu - Thorbjørn Ravn Andersen
Ich musste auch Folgendes ausführen, damit es funktionierte: sudo update-java-alternatives --jre --set java-1.8.0-openjdk-amd64 und sudo update-java-alternatives --jre-headless --set java-1.8.0-openjdk-amd64 - champost


Der Nix Package Manager verwaltet auch Binärpakete von OpenJDK 8 für Ubuntu, was bedeutet, dass Sie einen funktionierenden Java 8 Compiler in weniger als fünf Minuten von Anfang bis Ende (mit einer schnellen Internetverbindung natürlich) erhalten können.

Die Schritte sind:

  1. Installieren Sie den Nix-Paketmanager (https://www.domenkozar.com/2014/01/02/getting-started-with-nix-package-manager/): $ bash <(curl https://nixos.org/nix/install)

  2. Führe den Shell-One-Liner aus, den Nix am Ende der Installation sagt: $ . ~/.nix-profile/etc/profile.d/nix.sh

  3. Installieren Sie das OpenJDK Nix-Paket: $ nix-env -i openjdk

  4. Prüfen javac: $ javac -version

Das ist es. Oh, und du wirst sicher sein wollen, dass du den One-Liner von Schritt 2 in deine Tasche steckst ~/.bashrc. Das wird Nix dazu bringen, die installierten Pakete korrekt zu verknüpfen (da es die eigentlichen Dateien in nicht standardmäßigen Verzeichnissen speichert).


2
2017-10-10 03:27



Aus Neugier - warum möchten Sie neben apt-get noch einen zusätzlichen Paketmanager? - Thorbjørn Ravn Andersen
@ ThorbjørnRavnAndersen - der genaue Grund ist, dass man OpenJDK 8 mit minimalen Schmerzen schnell bekommt, und der allgemeine Grund ist, dass Nix eine revolutionäre Verbesserung gegenüber apt-get und anderen älteren Paketmanagern ist. - Yawar
Ich frage im allgemeinen Fall - nicht explizit für OpenJDK. Es muss sehr starke Gründe geben, einen neuen Paketmanager einzuführen, der das bestehende Ökosystem, das mir schwer fällt, nicht zu nutzen. - Thorbjørn Ravn Andersen
@ ThorbjørnRavnAndersen - es gibt sehr gute Gründe, Nix im allgemeinen Fall zu empfehlen. Wie ich bereits erwähnte, ist es eine revolutionäre Verbesserung. Auf der Skala von Git über Svn. Auschecken infoq.com/articles/configuration-management-with-nix für mehr. - Yawar


Ich bekomme OpenJDK 8 von den offiziellen Debian-Repositories, anstatt irgendein zufälliges PPA. Hier ist, wie ich es gemacht habe:

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

Machen /etc/apt/sources.list.d/debian-jessie-backports.list:

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

wo du dich änderst <httpredir> mit dem Präfix für einen nahen Spiegel (siehe https://www.debian.org/mirror/list)

Machen /etc/apt/preferences.d/debian-jessie-backports:

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

Dann mach endlich die Installation:

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

2
2017-08-10 08:22



Diese Antwort funktioniert nicht für mich. openjdk-8-jdk will openjdk-8-jre das will libjpeg62-turbo. Gemäß apt Letzteres ist "nicht installierbar" oder ausführlicher "ist nicht verfügbar, wird aber von einem anderen Paket angesprochen. Dies kann bedeuten, dass das Paket fehlt, veraltet ist oder nur aus einer anderen Quelle verfügbar ist" - also nicht von der Repositories, die ich habe. Die Jagd wird zu weit, um weise zu sein - XavierStuvw