Tutorial

Installation von Java mit Apt unter Ubuntu 20.04

JavaUbuntu 20.04

Einführung

Java und die JVM (Java Virtual Machine) werden für viele Arten von Software benötigt, einschließlich Tomcat, Jetty, Glassfish, Cassandra und Jenkins.

In diesem Leitfaden werden Sie verschiedene Versionen der Java Runtime Environment (JRE) und des Java Developer Kit (JDK) mit apt installieren. Sie installieren OpenJDK sowie das offizielle JDK von Oracle. Anschließend wählen Sie die Version aus, die Sie für Ihre Projekte verwenden möchten. Wenn Sie fertig sind, können Sie mit JDK Software entwickeln oder mit Java Runtime Software ausführen.

Voraussetzungen

Um dieser Anleitung zu folgen, benötigen Sie:

Installation von Standard-JRE/JDK

Der einfachste Weg der Installation von Java besteht darin, die im Ubuntu Paket enthaltene Version zu verwenden. Ubuntu 20.04 enthält standardmäßig Open JDK 11, eine Open-Source-Variante der JRE und des JDK.

Aktualisieren Sie zuerst den Paketindex, um diese Version zu installieren:

  • sudo apt update

Überprüfen Sie anschließend, ob Java bereits installiert ist:

  • java -version

Falls Java aktuell nicht installiert ist, so wird die folgende Ausgabe angezeigt:

Output
Command 'java' not found, but can be installed with: sudo apt install default-jre # version 2:1.11-72, or sudo apt install openjdk-11-jre-headless # version 11.0.7+10-3ubuntu1 sudo apt install openjdk-13-jre-headless # version 13.0.3+3-1ubuntu2 sudo apt install openjdk-14-jre-headless # version 14.0.1+7-1ubuntu1 sudo apt install openjdk-8-jre-headless # version 8u252-b09-1ubuntu1

Führen Sie den folgenden Befehl aus, um die standardmäßige Java-Laufzeitumgebung (JRE) zu installieren, die das JRE von OpenJDK 11 installiert:

  • sudo apt install default-jre

Die JRE ermöglicht Ihnen, fast alle Java-Programme auszuführen.

Überprüfen Sie die Installation mit:

  • java -version

Sie sehen die folgende Ausgabe:

Output
openjdk version "11.0.7" 2020-04-14 OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1) OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

Möglicherweise benötigen Sie das Java Development Kit (JDK) zusätzlich zur JRE, um bestimmte Java-basierte Software zu kompilieren und auszuführen. Führen Sie zum Installieren des JDK den folgenden Befehl aus, mit dem auch die JRE installiert wird:

  • sudo apt install default-jdk

Überprüfen Sie, ob das JDK installiert ist, indem Sie die Version von javac, dem Java-Compiler, überprüfen:

  • javac -version

Sie sehen die folgende Ausgabe:

Output
javac 11.0.7

Schauen wir uns nun an, wie Sie das offizielle JDK und JRE von Oracle installieren.

Installation von Oracle JDK 11

Die Lizenzvereinbarung von Oracle für Java erlaubt keine automatische Installation durch Paketmanager. Um das Oracle JDK zu installieren, das die offizielle Version von Oracle ist, müssen Sie ein Oracle-Konto erstellen und das JDK manuell herunterladen, um ein neues Paket-Repository für die Version hinzuzufügen, die Sie verwenden möchten. Dann können Sie apt verwenden, um es mithilfe eines Drittanbieter-Skripts zu installieren.

Die Version des JDK von Oracle, das Sie herunterladen sollen, muss der Skript-Version des Installationsprogramms entsprechen. Um zu erfahren, welche Version Sie benötigen, gehen Sie auf die Seite oracle-java11-installer.

Suchen Sie das Paket für Focal, wie in der folgenden Abbildung dargestellt:

Installationspaket für Ubuntu 2.04

In diesem Bild sehen Sie die Version des Skripts 11.0.7. In diesem Fall benötigen Sie Oracle JDK 11.0.7. Von dieser Seite müssen Sie nichts herunterladen. Sie laden das Installationsskript in Kürze über apt herunter.

Besuchen Sie die Seite Downloads und suchen Sie die Version, die der gewünschten Variante entspricht.

Oracle Java 11

Klicken Sie auf die Schaltfläche JDK Download und Sie werden auf einen Bildschirm geführt, der die verfügbaren Versionen anzeigt. Klicken Sie auf das Paket .tar.gz für Linux.

Linux-Download​​​

Daraufhin wird Ihnen ein Bildschirm angezeigt, auf dem Sie aufgefordert werden, die Lizenzvereinbarung von Oracle zu akzeptieren. Markieren Sie das Kontrollkästchen, um die Lizenzvereinbarung zu akzeptieren und klicken Sie auf die Schaltfläche Download. Nun startet Ihr Download. Möglicherweise müssen Sie sich noch einmal bei Ihrem Oracle-Konto anmelden, bevor der Download beginnt.

Sobald die Datei heruntergeladen wurde, müssen Sie sie auf Ihren Server übertragen. Laden Sie die Datei von Ihrem lokalen Rechner auf Ihren Server hoch. Verwenden Sie auf MacOS, Linux oder Windows mit dem Windows Subsystem für Linux den Befehl scp, um die Datei in das Stammverzeichnis Ihres Benutzers sammy zu übertragen. Beim folgenden Befehl wird davon ausgegangen, dass Sie die Oracle JDK-Datei in den Download-Ordner Ihres lokalen Rechners gespeichert haben:

  • scp Downloads/jdk-11.0.7_linux-x64_bin.tar.gz sammy@your_server_ip:~

Sobald der Upload der Datei abgeschlossen ist, kehren Sie zu Ihrem Server zurück und fügen das Drittanbieter-Repository hinzu, das Sie bei der Installation der Oracle-Software Java unterstützt.

Installieren Sie das Paket software-properties-common, das Ihrem System den Befehl add-apt-repository hinzufügt:

  • sudo apt install software-properties-common

Importieren Sie als Nächstes den Signierschlüssel, der zur Überprüfung der Software verwendet wird, die Sie installieren möchten:

  • sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A

Sie sehen diese Ausgabe:

Output
gpg: key EA8CACC073C3DB2A: public key "Launchpad PPA for Linux Uprising" imported gpg: Total number processed: 1 gpg: imported: 1

Verwenden Sie dann den Befehl add-apt-repository, um das Repo zu Ihrer Paketquellenliste hinzuzufügen:

  • sudo add-apt-repository ppa:linuxuprising/java

Sie sehen diese Meldung:

Output
Oracle Java 11 (LTS) and 12 installer for Ubuntu, Linux Mint and Debian. Java binaries are not hosted in this PPA due to licensing. The packages in this PPA download and install Oracle Java 11, so a working Internet connection is required. The packages in this PPA are based on the WebUpd8 Oracle Java PPA packages: https://launchpad.net/~webupd8team/+archive/ubuntu/java Created for users of https://www.linuxuprising.com/ Installation instructions (with some tips), feedback, suggestions, bug reports etc.: . . . Press [ENTER] to continue or ctrl-c to cancel adding it

Drücken Sie ENTER, um die Installation fortzusetzen. Eventuell sehen Sie eine Meldung, die besagt, dass keine gültigen OpenPGP-Daten gefunden wurden. Diese können Sie jedoch ignorieren.

Aktualisieren Sie Ihre Paketliste, um die neue Software für die Installation bereitzustellen:

  • sudo apt update

Das Installationsprogramm sucht nach dem Oracle JDK, das Sie heruntergeladen haben, unter /var/cache/oracle-jdk11-installer-local​​​. Erstellen Sie dieses Verzeichnis und verschieben Sie das Oracle JDK dorthin:

  • sudo mkdir -p /var/cache/oracle-jdk11-installer-local/
  • sudo cp jdk-11.0.7_linux-x64_bin.tar.gz /var/cache/oracle-jdk11-installer-local/

Installieren Sie schließlich das Paket:

  • sudo apt install oracle-java11-installer-local

Das Installationsprogramm fordert Sie zunächst dazu auf, die Lizenzvereinbarung von Oracle zu akzeptieren. Wenn Sie die Vereinbarung akzeptieren, wird das Installationsprogramm das Java-Paket extrahieren und installieren.

Schauen wir uns nun an, wie Sie auswählen, welche Java-Version Sie verwenden möchten.

Java-Management

Es können sich mehrere Java-Installationen auf einem Server befinden. Mit dem Befehl update-alternatives können Sie konfigurieren, welche Version standardmäßig in der Befehlszeile verwendet wird.

  • sudo update-alternatives --config java

So würde das Ergebnis aussehen, wenn Sie gemäß diesem Tutorial alle Java-Versionen installiert haben:

Output
There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode * 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode Press <enter> to keep the current choice[*], or type selection number:

Wählen Sie die mit der Java-Version verknüpfte Zahl aus, um sie als Standard zu verwenden, oder drücken Sie die ENTER, um die aktuellen Einstellungen zu übernehmen.

Sie können dies für andere Java-Befehle tun, etwa für den Compiler (javac):

  • sudo update-alternatives --config javac

Weitere Befehle, für die dieser Befehl verwendet werden kann, sind unter anderem: keytool, javadoc und jarsigner.

Einstellen der Umgebungsvariablen JAVA_HOME

Viele mit Java geschriebene Programme verwenden die Umgebungsvariable JAVA_HOME, um den Java-Installationsort zu bestimmen.

Zur Einstellung der Umgebungsvariable müssen Sie zunächst bestimmen, wo Java installiert ist. Verwenden Sie den Befehl update-alternatives:

  • sudo update-alternatives --config java

Dieser Befehl zeigt jede Java-Installation sowie deren Installationspfad an:

Output
There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode * 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode Press <enter> to keep the current choice[*], or type selection number:

In diesem Fall lauten die Installationspfade wie folgt:

  1. OpenJDK 11 befindet sich unter /usr/lib/jvm/java-11-openjdk-amd64/bin/java.
  2. Oracle Java befindet sich unter /usr/lib/jvm/java-11-oracle/jre/bin/java.

Kopieren Sie den Pfad Ihrer bevorzugten Installation. Öffnen Sie dann /etc/environment mit nano oder Ihrem bevorzugten Texteditor:

  • sudo nano /etc/environment

Fügen Sie am Ende dieser Datei die folgende Zeile hinzu und stellen Sie sicher, dass der hervorgehobene Pfad durch Ihren eigenen kopierten Pfad ersetzt wird, aber nicht den Teil bin/ des Pfades beinhaltet:

/etc/environment
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"

Durch das Ändern dieser Datei wird der Pfad JAVA_HOME für alle Benutzer Ihres Systems festgelegt.

Speichern Sie die Datei und beenden Sie den Editor.

Laden Sie nun diese Datei neu, um die Änderungen auf Ihre aktuelle Sitzung anzuwenden:

  • source /etc/environment

Überprüfen Sie, dass die Umgebungsvariable eingestellt ist:

  • echo $JAVA_HOME

Sie sehen den Pfad, den Sie gerade eingestellt haben:

Output
/usr/lib/jvm/java-11-openjdk-amd64

Andere Benutzer müssen den Befehl source /etc/environment ausführen oder sich ab- und erneut anmelden, um diese Einstellung zu übernehmen.

Zusammenfassung

In dieser Anleitung haben Sie mehrere Versionen von Java installiert und gelernt, wie man diese verwaltet. Sie können jetzt Software installieren, die auf Java ausgeführt wird, etwa Tomcat, Jetty, Glassfish, Cassandra oder Jenkins.

0 Comments

Creative Commons License