Um Java in Linux zu installieren (ich habe CentOS verwendet, RHEL ist auch dasselbe), habe ich diesen Befehl verwendet
rpm -Uvh /path/to/binary/jdk-7u55-linux-x64.rpm
und verifiziertes Java
Java -version
Wenn Sie sich ein Tutorial ansehen, heißt es, dass Sie die folgenden 4 Befehle ausführen sollen, nicht wissen, warum
## Java ##
alternatives --install /usr/bin/Java java /usr/Java/latest/jre/bin/Java 200000
## javaws ##
alternatives --install /usr/bin/javaws javaws /usr/Java/latest/jre/bin/javaws 200000
## Install javac only
alternatives --install /usr/bin/javac javac /usr/Java/latest/bin/javac 200000
## jar ##
alternatives --install /usr/bin/jar jar /usr/Java/latest/bin/jar 200000
Ich weiß, wenn mehrere Java-Versionen installiert sind, können Sie die Version auswählen, von der aus sie verwendet werden soll
alternatives --config Java
warum sollten Sie alternative --install
für jede ausführbare Datei separat ausführen.
Ich habe diese Frage gesehen, bekomme aber meine Antwort nicht
Wenn Sie JDK unter Linux installieren, wird es installiert. Dies hängt von der Art des Pakets, der Version und der Verteilung ab. Informationen zum Installationspfad unter Linux finden Sie unter den folgenden Links:
JDK-Installation für Linux-Plattformen - Version 8
JDK-Installation für Linux-Plattformen - Version 7
Nach der Installation von JDK wird der Ordner bin
, der Tools enthält, möglicherweise nicht zur Umgebungsvariablen PATH
hinzugefügt. Befehle, die im Terminal eingegeben werden, müssen von den in der Variablen PATH
angegebenen Positionen stammen. Wenn JDK\bin
nicht hinzugefügt wird, muss der Benutzer sie manuell konfigurieren, wie unter JDK-Software installieren beschrieben.
Mit dem Befehl alternatives
wird ein symbolischer Link erstellt. Hier wird angewiesen, den Befehl zu verwenden, um die Tools wie javac
, javaw
zu /usr/bin
hinzuzufügen, die standardmäßig in der Variable PATH
vorhanden sind.
If ( Sie könnten Java -version
außerhalb von JDK/bin
&& ausführen, indem Sie nicht den vollständigen Pfad && angeben, wenn die Version und das Paket so gedruckt werden, dass es dem installierten Paket entspricht) { Sie müssen den Befehl alternatives
nicht ausführen .}
Java
, javaws
, javac
und jar
sind verschiedene vom JDK verwendete ausführbare Dateien. Wenn Sie alternatives --config Java
ausführen, konfigurieren Sie nur, welche Version der ausführbaren Java
-Datei Sie ausführen möchten. Das JDK enthält jedoch beispielsweise den Compiler javac
. Sie müssen konfigurieren, welche Version des Compilers Sie ebenfalls verwenden möchten.
Der Befehl alternatives wird in kurzen Worten verwendet, um eine Suche nach symbolischen (oder sym) Links durchzuführen. Bevor Sie auswählen können, welche Version von Java
Sie mit der Option --configure
ausführen möchten, müssen Sie zuerst den tatsächlichen Pfad zur ausführbaren Datei mit der Option --install
registrieren. alternatives --install
installiert keine Software. Es werden lediglich einige Pfade und Aliasnamen mit dem alternatives
-Framework registriert. (Hinweis: alternatives
verwendet nicht den Befehl alias
. Ich meine "Aliasnamen" im traditionellen Sinne.)
Sie sollten auch verstehen, was der Befehl rpm
bewirkt. In Wirklichkeit werden nur Binärdateien in einem bestimmten Verzeichnis abgelegt. Dieses Verzeichnis kann lang und langwierig sein, um Folgendes explizit anzugeben: /some/path/to/lib/jvm/Java-1.x.x-etc-etc-x86/jre/bin/Java
. Sie möchten dies nicht jedes Mal angeben, wenn Sie Java
ausführen möchten. Stattdessen haben wir einige Sym-Links eingerichtet.
Vielleicht möchten Sie auch wissen, wie PATH
in Linux funktioniert.
Es kann klarer werden, wenn Sie versuchen, durch das Setup Ihres Computers zu suchen. Hier ist was ich lief:
> which Java
/usr/bin/Java
> ls -l /usr/bin/Java
lrwxrwxrwx 1 root root 22 Aug 14 2014 /usr/bin/Java -> /etc/alternatives/Java
> ls -l /etc/alternatives/Java
lrwxrwxrwx 1 root root 73 Aug 14 2014 /etc/alternatives/Java -> /usr/lib/jvm/Java-1.7.0-openjdk-1.7.0.65-2.5.1.2.fc19.x86_64/jre/bin/Java
So erhalten Sie eine andere Version von Java JRE/JDK als Standard in Ihrem Betriebssystem:
Sudo alternatives --install /usr/bin/Java java [path_to_Java_bin] 1
Beispiel in meinem Fall war:
Sudo alternatives --install /usr/bin/Java java /usr/Java/jdk1.7.0_80/bin/Java 1
Führen Sie dann eine Konfiguration aus, um die alternative Java-Version auszuwählen:
Sudo /usr/sbin/alternatives --config Java
Wählen Sie 1,2 oder die gewünschte Option
Überprüfen Sie dann die Änderungen, indem Sie Folgendes tun:
Java -version
Diese "alternativen" Skripts und ähnliche Tools verknüpfen lediglich Binärdateien der gewünschten JDK-Version mit den Verzeichnissen, von denen sie erwarten. Es wird für alle Befehle ausgeführt, die in Ihrer Befehlszeile verfügbar sein sollten.
Die Definition von "Alle" hängt von Ihrer Distribution ab.
Für Ubuntu benutze update-alternatives