Ich bin mir nicht ganz sicher, aber wenn Sie das normale RPMS installieren, kann der JAVA_HOME-Wert auch so eingestellt werden:
/usr/java/default/
EDIT: Ich habe gerade mein Heimsystem überprüft. Ich habe diese Datei erstellt:
/etc/profile.d/java.sh
Das beinhaltet:
export JAVA_HOME=/usr/java/default/
und ich benutze die offizielle Version von Sun: jdk-1.6.0_12-fcs
BEARBEITEN: So richte ich Java auf meinem Computer ein :
Installieren Sie Java
Laden Sie Java JDK von Oracle herunter und installieren Sie es
Machen Sie es primär
Stellen Sie mithilfe der folgenden beiden Befehle sicher, dass dieses Java anstelle der OpenJDK-Version verwendet wird:
Zuerst
alternatives --install /usr/bin/java java /usr/java/default/bin/java 999999 \
--slave /usr/bin/keytool keytool /usr/java/default/bin/keytool \
--slave /usr/bin/rmiregistry rmiregistry /usr/java/default/bin/rmiregistry
Zweite
alternatives --install /usr/bin/javac javac /usr/java/default/bin/javac 999999 \
--slave /usr/bin/jar jar /usr/java/default/bin/jar \
--slave /usr/bin/rmic rmic /usr/java/default/bin/rmic
Setzen Sie JAVA_HOME
Stellen Sie sicher, dass für alle Benutzer die Umgebungsvariable JAVA_HOME auf den richtigen Wert festgelegt ist:
echo "export JAVA_HOME=/usr/java/default/" > /etc/profile.d/java_home.sh
/usr/java/default
In meiner CentOS 6-Box ist kein mit OpenJDK 1.6 und 1.7 installiert.Sie möchten JAVA_HOME als Stammspeicherort des JDK oder der JRE festlegen. Beispiel:
Wenn das JDK (Development Kit) installiert ist, möchten Sie wahrscheinlich, dass es darauf verweist, und verwenden Sie den JRE-Pfad (Java Runtime Environment). Dann möchten Sie vielleicht Ihre Umgebungsvariable $ PATH so einstellen, dass sie auch das bin-Verzeichnis enthält:
Wenn Sie Tomcat verwenden, müssen Sie möglicherweise auch CATALINA_HOME für den Tomcat-Benutzer festlegen.
Um dies für das System festzulegen, müssen Sie Ihr / etc / profile bearbeiten oder eine .sh-Datei im Ordner /etc/profile.d hinzufügen. Für einen bestimmten Benutzer können Sie ihn in die Benutzerdateien ~ / .profile oder ~ / .bash_profile einfügen.
quelle
Das Folgende funktioniert bei mir immer perfekt:
Dies bedeutet, dass ich JAVA_HOME als /usr/java/jdk1.6.0_31 festlegen kann
quelle
Ich dachte über das Problem nach, ob man die Java-Version ändert, die verwendet wird mit:
Dann wird sich jeder fest codierte Code
JAVA_HOME
ändern (zumindest bei den Centos 6.6, auf die ich gerade starre). Das heißt, es gibt keine/usr/java
.Dies scheint nicht der beste Weg zu sein (offen für Fehler), aber in den 10 Minuten, die ich damit verbracht habe, scheint es der beste zu sein.
In habe
/etc/bashrc
ich die Einstellung geändert, umJAVA_HOME
zu sein:Sie müssen unter MacOSX etwas Ähnliches tun, aber ohne all das
grep
undsed
um das Ergebnis zu analysieren. Sicherlichalternatives
bietet sich eine ähnlich einfachere Lösung an.Trotzdem hoffe ich, dass ich geholfen habe.
Aktualisieren
Nein das wäre
JRE_HOME
. Das JDK / SDK ist nicht so offensichtlich (ich werde weiter suchen).Es
alternatives
scheint sich standardmäßig nur um die JRE zu handeln. Ich verlasse mich auf @Niels Antwort oder installiere einfach Java mityum
und setze das JAVA_HOME auf das (der Trick ist, wo ich gefunden habe, wo das installiert wurde!).Mir
java_1.8.0
ist ein Symlink auf aufgefallen/etc/alternatives/java_sdk_1.8.0
und ich habe mein $ JAVA_HOME auf gesetzt/usr/lib/jvm/java_1.8.0
. In der/etc/bashrc
.quelle
Das ist seltsam, der Sinn einer JAVE_HOME-Umgebungsvariablen besteht darin, dass Sie nicht den Pfad zu jedem Programm angeben müssen, sondern diesen Pfad ermitteln müssen, indem Sie nach dieser Variablen suchen.
In beiden Fällen können Sie die Umgebungsvariable für JAVA_HOME korrekt ermitteln, indem Sie echo verwenden:
Durch Ausführen dieses Befehls wird der Pfad unabhängig von der von Ihnen ausgeführten Version über die Befehlszeile angezeigt.
quelle
Informationen zu Centos7 finden Sie in der Datei /etc/java/java.conf.
JAVA_HOME soll sich in folgendem Verzeichnis befinden: / usr / lib / jvm / java
Ich habe überprüft, es ist die richtige Version des JDK, das ich über YUM geladen habe, und so ...
In meinem Env ist JAVA_HOME nicht standardmäßig eingestellt, daher habe ich es in .bash_profile eingestellt
quelle
Ich fand das Paket - Manager in einer Vielzahl von Standorten platzieren können, so verwenden die (Sie müssen explizit diese installieren , wenn ein Behälter verwendet wird ) die folgenden ist etwas weniger spröde
oder für JRE
quelle