Home Wiki > Sun Java
Sign up | Login

Sun Java

tagline: Aus openSUSE

Sun Java, auch JRE-Java Runtime Environment oder JSE-Java Standard Edition, ist eine Implementierung der Laufzeitumgebung für die Programmiersprache Java welches mittlerweile zum Oracle Konzern gehört. Diese Seite wurde aus dem englischen Wiki kopiert. Das Original ist en:SDB:Installing Java
Getestet mit openSUSE Empfohlene Artikel Verwandte Artikel
Icon-checked.png

Icon-manual.png Icon-help.png


SunJava


Download für openSUSE:

Hersteller: Sun

Lizenz: GPL/Java Community Process
Webseite: Java Projektseite


Situation

Aufgrund von Lizenzangelegenheiten kann Oracle (Sun) Java JRE nicht mehr in die repositorys von openSUSE Einbezogen werden. Hier gibt es eine kurze Anleitung, wie man die neueste und sichere Version installieren kann. Auf der Oracle Java Webseite stehen zwei Versionen zum Download zur Verfügung:

  • Java Runtime Environment (JRE): enthält den virtuellen Java Motor), Bibliotheken, Java Anwendungsstarter, Webbrowser und grundsätzlich alles was benötigt wird, um Programme auszuführen, die in der Java-Sprache geschrieben sind.
  • Java Development Kit (JDK): Zusätzlich zur Java Runtime Environment (JRE) oben enthält es alle Werkzeuge, die benötigt werden, um Programme zu entwickeln, zu testen und Fehler zu beseitigen, die in Java geschrieben sind.

Die JRE Installation ist kürzer als die JDK Version, darum wird die Vorgehensweise für die Installation von JDK zuerst gezeigt. Auf diese Weise sollten die Unterschiede mit JRE deutlicher werden, wenn jemand aus irgend einem Grund nur die Java Runtime Environment installieren. Darum ist die Installation beider Pakete, wenn sie die gleiche Versionsnummer haben, nicht (sehr) nützlich.
Für beide Wege, für die Installation von JDK und JRE wird die gleiche Bezeichnung verwendet, z.B. jdk_Oracle, für den symbolischen Link, der auf den Ordner zeigt, in dem die Oracle Java Environment abgelegt ist. Auf diese Weise kann man beiden Prozessen nacheinander folgen, da JDK und JRE in unterschiedliche Verzeichnisse installiert werden, aber nur das letzte wird auf Irem System verwendet (auf das der symbolische Link verweist).

Java Runtime Environment Installation unter Verwendung von Oracle's RPM

Der zweck dieser Installationsmethode besteht in einer schnellen und leichten Einrichtung. Sie brauchen kein Icedtea Web Plugin, nur das offizielle Java. Diese Methode wird für diejenigen empfohlen, die Oracle's Java für Webseiten benötigen, die auf das echte Produkt bestehen, um Zugriff zu erhalten.

Bestimmen Sie zuerst welche Architektur Sie am Laufen haben, bevor Sie die Pakete auf Ihr System herunter laden. Um sicher zu gehen, öffnen Sie ein Terminal durch Eingabe des Kommandos (Alt+F2 in KDE): konsole oder xterm.

Dann gib folgendes Kommando ein:

uname -m

Wenn die Ausgabe erscheint:

i486
i586
i686

Dann haben Sie eine 32 bit Architektur.

Wenn die Ausgabe erscheint:

x86_64

Dann haben Sie eine 64 bit Architektur.

Laden Sie das offizielle RPM von Java.com herunter und installieren Sie das RPM mit Ihrer bevorzugten Methode. Bei Installation über das Terminal geben Sie ein:

su

Nun geben Sie das Rootpasswort ein. Damit sind Sie im "Superuser" Modus. Navigieren Sie zum Ort des Downloads, Firefox oder Chrome legen typischer Weise alles im Ordner ~/Downloads ab.

cd ~/Downloads

Zur Installation geben Sie im Terminal ein:

rpm -ivh jre-7u25-linux-i586.rpm

oder wenn Sie das 64-bit RPM herunter geladen haben:

rpm -ivh jre-7u25-linux-x64.rpm

Ist die Installation komplett, kopieren und fügen Sie folgenden Befehl als Root im Terminal ein:

zypper rm icedtea-web
update-alternatives --install "/usr/bin/java" "java" "/usr/java/latest/bin/java" 1
update-alternatives --set java /usr/java/latest/bin/java
ln -s /usr/java/latest/lib/i386/libnpjp2.so /usr/lib/browser-plugins/

oder für das 64-bit RPM, verwenden Sie dafür folgende Zeile:

ln -s /usr/java/latest/jre/lib/amd64/libnpjp2.so /usr/lib64/browser-plugins/

Die Installation von Java und der geeigneten Links sind komplett. Sie können nun Java in jedem Webbrowser auf Ihrem System verwenden.

Begrenzte Java Anwendung

Obwohl im Menü kein Icon erscheint gibt es ein Java Control Panel, das es erlaubt, viele Einstellungen einzurichten. Um darauf zu zu greifen, öffnen Sie ein Terminal und geben ein:

jcontrol
  • Klick auf Settings... unter Temporary Internet Files
  • Unter Disk Space lege die Größe des Speicherbedarfs für die Speicherung temporärer Dateien nach Ihrer Wahl. 50 bis 100 MB sollten ausreichen.
  • Klick OK um die Dialogbox zu schließen und OK um das Java Control Panel zu schließen.

Vorgehensweise, bei der die Entwicklungsumgebung enthalten ist (JDK)

Komplett enthaltene Java Umgebung.

Warnung!Ab hier bis zum Ende des Abschnitts, für jeden Unterabschnitt (der Updating Oracle Java enthält), wenn Ihr System eine 64-bit Architektur besitzt, muss jede Erscheinung von /usr/lib durch /usr/lib64 ersetzt werden. Folgen Sie bitte den geeigneten Unterabschnitten für Ihre Systemarchitektur, wenn Sie die Kommentare einfügen.

Installation von Oracle Java SE

  • Download Oracle Java SE Development Kit (JDK) von der Oracle Java Webseite. Speichern Sie es auf einem leicht zu merkenden Speicherplatz. (z.B. /tmp)
Download einer geeigneten Version für Ihre Systemarchitektur. z.B: Oracle Java version 1.7.0_7:
Linux x86 (32-bit Architektur)
jdk-7u7-linux-i586.tar.gz
Linux x64 (64-bit Architektur)
jdk-7u7-linux-x64.tar.gz
  • Öffnen Sie ein Terminal und starten:
    cd /path/to/downloaded/java
  • Entpacken Sie es (als Root, nur um Sicher zu gehen):
    sudo tar -xzf ./jdk-7uX-linux-XX.tar.gz
  • Lege Erlaubnisse für das entpackte Verzeichnis und seinem Inhalt an:
    sudo chown -R root:root jdk1.X.X_XX/
Linux x86 (32-bit Architektur)
  • Open JDK ist standardmäßig installiert in /usr/lib, so lassen Sie uns Oracle Java ebenso nach /usr/lib verschieben:
    sudo mv ./jdk1.X.X_XX/ /usr/lib/
  • Erzeugen Sie einen symbolischen Link zu /usr/lib/jdk1.X.X_XX/ (das wird später für die Aktualisierung wichtig):
    sudo ln -s -T /usr/lib/jdk1.X.X_XX/ /usr/lib/jdk_Oracle
Linux x86_64 (64-bit Architektur)
  • Open JDK ist standardmäßig installiert in /usr/lib64, so lassen Sie uns Oracle Java ebenso nach /usr/lib64 verschieben:
    sudo mv ./jdk1.X.X_XX/ /usr/lib64/
  • Erzeugen Sie einen symbolischen Link zu /usr/lib64/jdk1.X.X_XX/ (das wird später für die Aktualisierung wichtig):
    sudo ln -s -T /usr/lib64/jdk1.X.X_XX/ /usr/lib64/jdk_Oracle

Informiere das System

Java Anwendungsstarter

  • Komprimiere die Man-Dateien, die in Ihre Installation einbezogen sind:
Linux x86 (32-bit Architektur)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/java.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/keytool.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/orbd.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/policytool.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/rmid.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/rmiregistry.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/servertool.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/tnameserv.1)
Linux x86_64 (64-bit Architektur)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/java.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/keytool.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/orbd.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/policytool.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/rmid.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/rmiregistry.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/servertool.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/tnameserv.1)
  • Bereite das Verzeichnis für jvm-exports vor (speziell für Version 1.7.0):
Linux x86 (32-bit Architektur)
  1. sudo mkdir /usr/lib/jvm-exports/jdk_Oracle
    cd /usr/lib/jvm-exports/jdk_Oracle
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/rt.jar jaas-1.7.0_Orac.jar
    sudo ln -s jaas-1.7.0_Orac.jar jaas-1.7.0.jar
    sudo ln -s jaas-1.7.0_Orac.jar jaas.jar
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/jce.jar jce-1.7.0_Orac.jar
    sudo ln -s jce-1.7.0_Orac.jar jce-1.7.0.jar
    sudo ln -s jce-1.7.0_Orac.jar jce.jar
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/rt.jar jdbc-stdext-1.7.0_Orac.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext-1.7.0.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext-3.0.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext.jar
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/rt.jar jndi-1.7.0_Orac.jar
    sudo ln -s jndi-1.7.0_Orac.jar jndi-1.7.0.jar
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/rt.jar jndi-cos-1.7.0_Orac.jar
    sudo ln -s jndi-cos-1.7.0_Orac.jar jndi-cos-1.7.0.jar
    sudo ln -s jndi-cos-1.7.0_Orac.jar jndi-cos.jar
    sudo ln -s jndi-1.7.0_Orac.jar jndi.jar
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/rt.jar jndi-ldap-1.7.0_Orac.jar
    sudo ln -s jndi-ldap-1.7.0_Orac.jar jndi-ldap-1.7.0.jar
    sudo ln -s jndi-ldap-1.7.0_Orac.jar jndi-ldap.jar
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/rt.jar jndi-rmi-1.7.0_Orac.jar
    sudo ln -s jndi-rmi-1.7.0_Orac.jar jndi-rmi-1.7.0.jar
    sudo ln -s jndi-rmi-1.7.0_Orac.jar jndi-rmi.jar
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/jsse.jar jsse-1.7.0_Orac.jar
    sudo ln -s jsse-1.7.0_Orac.jar jsse-1.7.0.jar
    sudo ln -s jsse-1.7.0_Orac.jar jsse.jar
    sudo ln -s /usr/lib/jdk_Oracle/jre/lib/rt.jar sasl-1.7.0_Orac.jar
    sudo ln -s sasl-1.7.0_Orac.jar sasl-1.7.0.jar
    sudo ln -s sasl-1.7.0_Orac.jar sasl.jar
  2. sudo /usr/sbin/update-alternatives --install /usr/bin/java java /usr/lib/jdk_Oracle/bin/java 3 --slave /usr/share/man/man1/java.1.gz java.1.gz /usr/lib/jdk_Oracle/man/man1/java.1.gz --slave /usr/lib/jvm/jre jre /usr/lib/jdk_Oracle/jre --slave /usr/lib/jvm-exports/jre jre_exports /usr/lib/jvm-exports/jdk_Oracle --slave /usr/bin/keytool keytool /usr/lib/jdk_Oracle/bin/keytool --slave /usr/share/man/man1/keytool.1.gz keytool.1.gz /usr/lib/jdk_Oracle/man/man1/keytool.1.gz --slave /usr/bin/orbd orbd /usr/lib/jdk_Oracle/bin/orbd --slave /usr/share/man/man1/orbd.1.gz orbd.1.gz /usr/lib/jdk_Oracle/man/man1/orbd.1.gz --slave /usr/bin/policytool policytool /usr/lib/jdk_Oracle/bin/policytool --slave /usr/share/man/man1/policytool.1.gz policytool.1.gz /usr/lib/jdk_Oracle/man/man1/policytool.1.gz --slave /usr/bin/rmid rmid /usr/lib/jdk_Oracle/bin/rmid --slave /usr/share/man/man1/rmid.1.gz rmid.1.gz /usr/lib/jdk_Oracle/man/man1/rmid.1.gz --slave /usr/bin/rmiregistry rmiregistry /usr/lib/jdk_Oracle/bin/rmiregistry --slave /usr/share/man/man1/rmiregistry.1.gz rmiregistry.1.gz /usr/lib/jdk_Oracle/man/man1/rmiregistry.1.gz --slave /usr/bin/servertool servertool /usr/lib/jdk_Oracle/bin/servertool --slave /usr/share/man/man1/servertool.1.gz servertool.1.gz /usr/lib/jdk_Oracle/man/man1/servertool.1.gz --slave /usr/bin/tnameserv tnameserv /usr/lib/jdk_Oracle/bin/tnameserv --slave /usr/share/man/man1/tnameserv.1.gz tnameserv.1.gz /usr/lib/jdk_Oracle/man/man1/tnameserv.1.gz
Linux x86_64 (64-bit Architektur)
  1. sudo mkdir /usr/lib64/jvm-exports/jdk_Oracle
    cd /usr/lib64/jvm-exports/jdk_Oracle
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/rt.jar jaas-1.7.0_Orac.jar
    sudo ln -s jaas-1.7.0_Orac.jar jaas-1.7.0.jar
    sudo ln -s jaas-1.7.0_Orac.jar jaas.jar
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/jce.jar jce-1.7.0_Orac.jar
    sudo ln -s jce-1.7.0_Orac.jar jce-1.7.0.jar
    sudo ln -s jce-1.7.0_Orac.jar jce.jar
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/rt.jar jdbc-stdext-1.7.0_Orac.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext-1.7.0.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext-3.0.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext.jar
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/rt.jar jndi-1.7.0_Orac.jar
    sudo ln -s jndi-1.7.0_Orac.jar jndi-1.7.0.jar
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/rt.jar jndi-cos-1.7.0_Orac.jar
    sudo ln -s jndi-cos-1.7.0_Orac.jar jndi-cos-1.7.0.jar
    sudo ln -s jndi-cos-1.7.0_Orac.jar jndi-cos.jar
    sudo ln -s jndi-1.7.0_Orac.jar jndi.jar
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/rt.jar jndi-ldap-1.7.0_Orac.jar
    sudo ln -s jndi-ldap-1.7.0_Orac.jar jndi-ldap-1.7.0.jar
    sudo ln -s jndi-ldap-1.7.0_Orac.jar jndi-ldap.jar
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/rt.jar jndi-rmi-1.7.0_Orac.jar
    sudo ln -s jndi-rmi-1.7.0_Orac.jar jndi-rmi-1.7.0.jar
    sudo ln -s jndi-rmi-1.7.0_Orac.jar jndi-rmi.jar
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/jsse.jar jsse-1.7.0_Orac.jar
    sudo ln -s jsse-1.7.0_Orac.jar jsse-1.7.0.jar
    sudo ln -s jsse-1.7.0_Orac.jar jsse.jar
    sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/rt.jar sasl-1.7.0_Orac.jar
    sudo ln -s sasl-1.7.0_Orac.jar sasl-1.7.0.jar
    sudo ln -s sasl-1.7.0_Orac.jar sasl.jar
  2. sudo /usr/sbin/update-alternatives --install /usr/bin/java java /usr/lib64/jdk_Oracle/bin/java 3 --slave /usr/share/man/man1/java.1.gz java.1.gz /usr/lib64/jdk_Oracle/man/man1/java.1.gz --slave /usr/lib64/jvm/jre jre /usr/lib64/jdk_Oracle/jre --slave /usr/lib64/jvm-exports/jre jre_exports /usr/lib64/jvm-exports/jdk_Oracle --slave /usr/bin/keytool keytool /usr/lib64/jdk_Oracle/bin/keytool --slave /usr/share/man/man1/keytool.1.gz keytool.1.gz /usr/lib64/jdk_Oracle/man/man1/keytool.1.gz --slave /usr/bin/orbd orbd /usr/lib64/jdk_Oracle/bin/orbd --slave /usr/share/man/man1/orbd.1.gz orbd.1.gz /usr/lib64/jdk_Oracle/man/man1/orbd.1.gz --slave /usr/bin/policytool policytool /usr/lib64/jdk_Oracle/bin/policytool --slave /usr/share/man/man1/policytool.1.gz policytool.1.gz /usr/lib64/jdk_Oracle/man/man1/policytool.1.gz --slave /usr/bin/rmid rmid /usr/lib64/jdk_Oracle/bin/rmid --slave /usr/share/man/man1/rmid.1.gz rmid.1.gz /usr/lib64/jdk_Oracle/man/man1/rmid.1.gz --slave /usr/bin/rmiregistry rmiregistry /usr/lib64/jdk_Oracle/bin/rmiregistry --slave /usr/share/man/man1/rmiregistry.1.gz rmiregistry.1.gz /usr/lib64/jdk_Oracle/man/man1/rmiregistry.1.gz --slave /usr/bin/servertool servertool /usr/lib64/jdk_Oracle/bin/servertool --slave /usr/share/man/man1/servertool.1.gz servertool.1.gz /usr/lib64/jdk_Oracle/man/man1/servertool.1.gz --slave /usr/bin/tnameserv tnameserv /usr/lib64/jdk_Oracle/bin/tnameserv --slave /usr/share/man/man1/tnameserv.1.gz tnameserv.1.gz /usr/lib64/jdk_Oracle/man/man1/tnameserv.1.gz

Java compiler

  • Komprimiere die Man-Dateien, die in Ihre Installation einbezogen sind:
Linux x86 (32-bit Architektur)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/appletviewer.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/apt.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/extcheck.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jar.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jarsigner.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/javac.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/javadoc.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/javah.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/javap.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jcmd.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jconsole.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jdb.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jhat.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jinfo.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jmap.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jps.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jrunscript.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jsadebugd.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jstack.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jstat.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/jstatd.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/native2ascii.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/pack200.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/rmic.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/schemagen.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/serialver.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/unpack200.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/wsgen.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/wsimport.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/xjc.1)

(Verzeichnis für jvm-exports: Das Gleiche wie oben für Launcher.)

sudo /usr/sbin/update-alternatives --install /usr/bin/javac javac /usr/lib/jdk_Oracle/bin/javac 3 \
--slave /usr/bin/appletviewer appletviewer /usr/lib/jdk_Oracle/bin/appletviewer \
--slave /usr/share/man/man1/appletviewer.1.gz appletviewer.1.gz /usr/lib/jdk_Oracle/man/man1/appletviewer.1.gz \
--slave /usr/bin/apt apt /usr/lib/jdk_Oracle/bin/apt \
--slave /usr/share/man/man1/apt.1.gz apt.1.gz /usr/lib/jdk_Oracle/man/man1/apt.1.gz \
--slave /usr/bin/extcheck extcheck /usr/lib/jdk_Oracle/bin/extcheck \
--slave /usr/share/man/man1/extcheck.1.gz extcheck.1.gz /usr/lib/jdk_Oracle/man/man1/extcheck.1.gz \
--slave /usr/bin/jar jar /usr/lib/jdk_Oracle/bin/jar \
--slave /usr/share/man/man1/jar.1.gz jar.1.gz /usr/lib/jdk_Oracle/man/man1/jar.1.gz \
--slave /usr/bin/jarsigner jarsigner /usr/lib/jdk_Oracle/bin/jarsigner \
--slave /usr/share/man/man1/jarsigner.1.gz jarsigner.1.gz /usr/lib/jdk_Oracle/man/man1/jarsigner.1.gz \
--slave /usr/lib/jvm/java java_sdk /usr/lib/jdk_Oracle \
--slave /usr/lib/jvm-exports/java java_sdk_exports /usr/lib/jvm-exports/jdk_Oracle \
--slave /usr/share/man/man1/javac.1.gz javac.1.gz /usr/lib/jdk_Oracle/man/man1/javac.1.gz \
--slave /usr/bin/javadoc javadoc /usr/lib/jdk_Oracle/bin/javadoc \
--slave /usr/share/man/man1/javadoc.1.gz javadoc.1.gz /usr/lib/jdk_Oracle/man/man1/javadoc.1.gz \
--slave /usr/bin/javah javah /usr/lib/jdk_Oracle/bin/javah \
--slave /usr/share/man/man1/javah.1.gz javah.1.gz /usr/lib/jdk_Oracle/man/man1/javah.1.gz \
--slave /usr/bin/javap javap /usr/lib/jdk_Oracle/bin/javap \
--slave /usr/share/man/man1/javap.1.gz javap.1.gz /usr/lib/jdk_Oracle/man/man1/javap.1.gz \
--slave /usr/share/man/man1/jcmd.1.gz jcmd.1.gz /usr/lib/jdk_Oracle/man/man1/jcmd.1.gz \
--slave /usr/bin/jconsole jconsole /usr/lib/jdk_Oracle/bin/jconsole \
--slave /usr/share/man/man1/jconsole.1.gz jconsole.1.gz /usr/lib/jdk_Oracle/man/man1/jconsole.1.gz \
--slave /usr/bin/jdb jdb /usr/lib/jdk_Oracle/bin/jdb \
--slave /usr/share/man/man1/jdb.1.gz jdb.1.gz /usr/lib/jdk_Oracle/man/man1/jdb.1.gz \
--slave /usr/bin/jhat jhat /usr/lib/jdk_Oracle/bin/jhat \
--slave /usr/share/man/man1/jhat.1.gz jhat.1.gz /usr/lib/jdk_Oracle/man/man1/jhat.1.gz \
--slave /usr/bin/jinfo jinfo /usr/lib/jdk_Oracle/bin/jinfo \
--slave /usr/share/man/man1/jinfo.1.gz jinfo.1.gz /usr/lib/jdk_Oracle/man/man1/jinfo.1.gz \
--slave /usr/bin/jmap jmap /usr/lib/jdk_Oracle/bin/jmap \
--slave /usr/share/man/man1/jmap.1.gz jmap.1.gz /usr/lib/jdk_Oracle/man/man1/jmap.1.gz \
--slave /usr/bin/jps jps /usr/lib/jdk_Oracle/bin/jps \
--slave /usr/share/man/man1/jps.1.gz jps.1.gz /usr/lib/jdk_Oracle/man/man1/jps.1.gz \
--slave /usr/bin/jrunscript jrunscript /usr/lib/jdk_Oracle/bin/jrunscript \
--slave /usr/share/man/man1/jrunscript.1.gz jrunscript.1.gz /usr/lib/jdk_Oracle/man/man1/jrunscript.1.gz \
--slave /usr/bin/jsadebugd jsadebugd /usr/lib/jdk_Oracle/bin/jsadebugd \
--slave /usr/share/man/man1/jsadebugd.1.gz jsadebugd.1.gz /usr/lib/jdk_Oracle/man/man1/jsadebugd.1.gz \
--slave /usr/bin/jstack jstack /usr/lib/jdk_Oracle/bin/jstack \
--slave /usr/share/man/man1/jstack.1.gz jstack.1.gz /usr/lib/jdk_Oracle/man/man1/jstack.1.gz \
--slave /usr/bin/jstat jstat /usr/lib/jdk_Oracle/bin/jstat \
--slave /usr/share/man/man1/jstat.1.gz jstat.1.gz /usr/lib/jdk_Oracle/man/man1/jstat.1.gz \
--slave /usr/bin/jstatd jstatd /usr/lib/jdk_Oracle/bin/jstatd \
--slave /usr/share/man/man1/jstatd.1.gz jstatd.1.gz /usr/lib/jdk_Oracle/man/man1/jstatd.1.gz \
--slave /usr/bin/native2ascii native2ascii /usr/lib/jdk_Oracle/bin/native2ascii \
--slave /usr/share/man/man1/native2ascii.1.gz native2ascii.1.gz /usr/lib/jdk_Oracle/man/man1/native2ascii.1.gz \
--slave /usr/bin/pack200 pack200 /usr/lib/jdk_Oracle/bin/pack200 \
--slave /usr/share/man/man1/pack200.1.gz pack200.1.gz /usr/lib/jdk_Oracle/man/man1/pack200.1.gz \
--slave /usr/bin/rmic rmic /usr/lib/jdk_Oracle/bin/rmic \
--slave /usr/share/man/man1/rmic.1.gz rmic.1.gz /usr/lib/jdk_Oracle/man/man1/rmic.1.gz \
--slave /usr/bin/schemagen schemagen /usr/lib/jdk_Oracle/bin/schemagen \
--slave /usr/share/man/man1/schemagen.1.gz schemagen.1.gz /usr/lib/jdk_Oracle/man/man1/schemagen.1.gz \
--slave /usr/bin/serialver serialver /usr/lib/jdk_Oracle/bin/serialver \
--slave /usr/share/man/man1/serialver.1.gz serialver.1.gz /usr/lib/jdk_Oracle/man/man1/serialver.1.gz \
--slave /usr/bin/unpack200 unpack200 /usr/lib/jdk_Oracle/bin/unpack200 \
--slave /usr/share/man/man1/unpack200.1.gz unpack200.1.gz /usr/lib/jdk_Oracle/man/man1/unpack200.1.gz \
--slave /usr/bin/wsgen wsgen /usr/lib/jdk_Oracle/bin/wsgen \
--slave /usr/share/man/man1/wsgen.1.gz wsgen.1.gz /usr/lib/jdk_Oracle/man/man1/wsgen.1.gz \
--slave /usr/bin/wsimport wsimport /usr/lib/jdk_Oracle/bin/wsimport \
--slave /usr/share/man/man1/wsimport.1.gz wsimport.1.gz /usr/lib/jdk_Oracle/man/man1/wsimport.1.gz \
--slave /usr/bin/xjc xjc /usr/lib/jdk_Oracle/bin/xjc \
--slave /usr/share/man/man1/xjc.1.gz xjc.1.gz /usr/lib/jdk_Oracle/man/man1/xjc.1.gz
Linux x86_64 (64-bit Architektur)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/appletviewer.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/apt.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/extcheck.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jar.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jarsigner.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/javac.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/javadoc.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/javah.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/javap.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jcmd.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jconsole.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jdb.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jhat.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jinfo.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jmap.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jps.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jrunscript.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jsadebugd.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jstack.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jstat.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/jstatd.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/native2ascii.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/pack200.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/rmic.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/schemagen.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/serialver.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/unpack200.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/wsgen.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/wsimport.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/xjc.1)

(Verzeichnis für jvm-exports: Das Gleiche wie oben für Launcher.)

sudo /usr/sbin/update-alternatives --install /usr/bin/javac javac /usr/lib64/jdk_Oracle/bin/javac 3 \
--slave /usr/bin/appletviewer appletviewer /usr/lib64/jdk_Oracle/bin/appletviewer \
--slave /usr/share/man/man1/appletviewer.1.gz appletviewer.1.gz /usr/lib64/jdk_Oracle/man/man1/appletviewer.1.gz \
--slave /usr/bin/apt apt /usr/lib64/jdk_Oracle/bin/apt \
--slave /usr/share/man/man1/apt.1.gz apt.1.gz /usr/lib64/jdk_Oracle/man/man1/apt.1.gz \
--slave /usr/bin/extcheck extcheck /usr/lib64/jdk_Oracle/bin/extcheck \
--slave /usr/share/man/man1/extcheck.1.gz extcheck.1.gz /usr/lib64/jdk_Oracle/man/man1/extcheck.1.gz \
--slave /usr/bin/jar jar /usr/lib64/jdk_Oracle/bin/jar \
--slave /usr/share/man/man1/jar.1.gz jar.1.gz /usr/lib64/jdk_Oracle/man/man1/jar.1.gz \
--slave /usr/bin/jarsigner jarsigner /usr/lib64/jdk_Oracle/bin/jarsigner \
--slave /usr/share/man/man1/jarsigner.1.gz jarsigner.1.gz /usr/lib64/jdk_Oracle/man/man1/jarsigner.1.gz \
--slave /usr/lib64/jvm/java java_sdk /usr/lib64/jdk_Oracle \
--slave /usr/lib64/jvm-exports/java java_sdk_exports /usr/lib64/jvm-exports/jdk_Oracle \
--slave /usr/share/man/man1/javac.1.gz javac.1.gz /usr/lib64/jdk_Oracle/man/man1/javac.1.gz \
--slave /usr/bin/javadoc javadoc /usr/lib64/jdk_Oracle/bin/javadoc \
--slave /usr/share/man/man1/javadoc.1.gz javadoc.1.gz /usr/lib64/jdk_Oracle/man/man1/javadoc.1.gz \
--slave /usr/bin/javah javah /usr/lib64/jdk_Oracle/bin/javah \
--slave /usr/share/man/man1/javah.1.gz javah.1.gz /usr/lib64/jdk_Oracle/man/man1/javah.1.gz \
--slave /usr/bin/javap javap /usr/lib64/jdk_Oracle/bin/javap \
--slave /usr/share/man/man1/javap.1.gz javap.1.gz /usr/lib64/jdk_Oracle/man/man1/javap.1.gz \
--slave /usr/share/man/man1/jcmd.1.gz jcmd.1.gz /usr/lib64/jdk_Oracle/man/man1/jcmd.1.gz \
--slave /usr/bin/jconsole jconsole /usr/lib64/jdk_Oracle/bin/jconsole \
--slave /usr/share/man/man1/jconsole.1.gz jconsole.1.gz /usr/lib64/jdk_Oracle/man/man1/jconsole.1.gz \
--slave /usr/bin/jdb jdb /usr/lib64/jdk_Oracle/bin/jdb \
--slave /usr/share/man/man1/jdb.1.gz jdb.1.gz /usr/lib64/jdk_Oracle/man/man1/jdb.1.gz \
--slave /usr/bin/jhat jhat /usr/lib64/jdk_Oracle/bin/jhat \
--slave /usr/share/man/man1/jhat.1.gz jhat.1.gz /usr/lib64/jdk_Oracle/man/man1/jhat.1.gz \
--slave /usr/bin/jinfo jinfo /usr/lib64/jdk_Oracle/bin/jinfo \
--slave /usr/share/man/man1/jinfo.1.gz jinfo.1.gz /usr/lib64/jdk_Oracle/man/man1/jinfo.1.gz \
--slave /usr/bin/jmap jmap /usr/lib64/jdk_Oracle/bin/jmap \
--slave /usr/share/man/man1/jmap.1.gz jmap.1.gz /usr/lib64/jdk_Oracle/man/man1/jmap.1.gz \
--slave /usr/bin/jps jps /usr/lib64/jdk_Oracle/bin/jps \
--slave /usr/share/man/man1/jps.1.gz jps.1.gz /usr/lib64/jdk_Oracle/man/man1/jps.1.gz \
--slave /usr/bin/jrunscript jrunscript /usr/lib64/jdk_Oracle/bin/jrunscript \
--slave /usr/share/man/man1/jrunscript.1.gz jrunscript.1.gz /usr/lib64/jdk_Oracle/man/man1/jrunscript.1.gz \
--slave /usr/bin/jsadebugd jsadebugd /usr/lib64/jdk_Oracle/bin/jsadebugd \
--slave /usr/share/man/man1/jsadebugd.1.gz jsadebugd.1.gz /usr/lib64/jdk_Oracle/man/man1/jsadebugd.1.gz \
--slave /usr/bin/jstack jstack /usr/lib64/jdk_Oracle/bin/jstack \
--slave /usr/share/man/man1/jstack.1.gz jstack.1.gz /usr/lib64/jdk_Oracle/man/man1/jstack.1.gz \
--slave /usr/bin/jstat jstat /usr/lib64/jdk_Oracle/bin/jstat \
--slave /usr/share/man/man1/jstat.1.gz jstat.1.gz /usr/lib64/jdk_Oracle/man/man1/jstat.1.gz \
--slave /usr/bin/jstatd jstatd /usr/lib64/jdk_Oracle/bin/jstatd \
--slave /usr/share/man/man1/jstatd.1.gz jstatd.1.gz /usr/lib64/jdk_Oracle/man/man1/jstatd.1.gz \
--slave /usr/bin/native2ascii native2ascii /usr/lib64/jdk_Oracle/bin/native2ascii \
--slave /usr/share/man/man1/native2ascii.1.gz native2ascii.1.gz /usr/lib64/jdk_Oracle/man/man1/native2ascii.1.gz \
--slave /usr/bin/pack200 pack200 /usr/lib64/jdk_Oracle/bin/pack200 \
--slave /usr/share/man/man1/pack200.1.gz pack200.1.gz /usr/lib64/jdk_Oracle/man/man1/pack200.1.gz \
--slave /usr/bin/rmic rmic /usr/lib64/jdk_Oracle/bin/rmic \
--slave /usr/share/man/man1/rmic.1.gz rmic.1.gz /usr/lib64/jdk_Oracle/man/man1/rmic.1.gz \
--slave /usr/bin/schemagen schemagen /usr/lib64/jdk_Oracle/bin/schemagen \
--slave /usr/share/man/man1/schemagen.1.gz schemagen.1.gz /usr/lib64/jdk_Oracle/man/man1/schemagen.1.gz \
--slave /usr/bin/serialver serialver /usr/lib64/jdk_Oracle/bin/serialver \
--slave /usr/share/man/man1/serialver.1.gz serialver.1.gz /usr/lib64/jdk_Oracle/man/man1/serialver.1.gz \
--slave /usr/bin/unpack200 unpack200 /usr/lib64/jdk_Oracle/bin/unpack200 \
--slave /usr/share/man/man1/unpack200.1.gz unpack200.1.gz /usr/lib64/jdk_Oracle/man/man1/unpack200.1.gz \
--slave /usr/bin/wsgen wsgen /usr/lib64/jdk_Oracle/bin/wsgen \
--slave /usr/share/man/man1/wsgen.1.gz wsgen.1.gz /usr/lib64/jdk_Oracle/man/man1/wsgen.1.gz \
--slave /usr/bin/wsimport wsimport /usr/lib64/jdk_Oracle/bin/wsimport \
--slave /usr/share/man/man1/wsimport.1.gz wsimport.1.gz /usr/lib64/jdk_Oracle/man/man1/wsimport.1.gz \
--slave /usr/bin/xjc xjc /usr/lib64/jdk_Oracle/bin/xjc \
--slave /usr/share/man/man1/xjc.1.gz xjc.1.gz /usr/lib64/jdk_Oracle/man/man1/xjc.1.gz

Webbrowser Plug-in

Linux x86 (32-bit Architektur)
sudo /usr/sbin/update-alternatives --install /usr/lib/browser-plugins/javaplugin.so javaplugin /usr/lib/jdk_Oracle/jre/lib/i386/libnpjp2.so 3 --slave /usr/bin/javaws javaws /usr/lib/jdk_Oracle/jre/bin/javaws --slave /usr/share/man/man1/javaws.1 javaws.1 /usr/lib/jdk_Oracle/man/man1/javaws.1
Linux x86_64 (64-bit Architektur)
Für openSUSE 64-bit verwenden Sie stattdessen:
sudo /usr/sbin/update-alternatives --install /usr/lib64/browser-plugins/javaplugin.so javaplugin /usr/lib64/jdk_Oracle/jre/lib/amd64/libnpjp2.so 3 --slave /usr/bin/javaws javaws /usr/lib64/jdk_Oracle/jre/bin/javaws --slave /usr/share/man/man1/javaws.1 javaws.1 /usr/lib64/jdk_Oracle/man/man1/javaws.1

Oracle Java als Standard einrichten

Sie müssen die geeignete Anzahl nach dem Start auswählen: (Das kann verwendet werden, um zwischen den verschiedene Java-Implementierungen umzuschalten.)


Java Anwendungsstarter

sudo /usr/sbin/update-alternatives --config java

Java compiler

sudo /usr/sbin/update-alternatives --config javac

Webbrowser Plug-in

sudo /usr/sbin/update-alternatives --config javaplugin

Einrichtungsoptionen speziell für das installierte Java (Option)

Sie können Oracle Java als Alternative für JDK (und JRE) Umgebungen einrichten, nur für eine spetielle Version von Java, im Fall 1.7.0; Die Änderungen werden gewöhnlich mit update-alternatives angewendet.

Java Anwendungsstarter

Linux x86 (32-bit Architektur)
sudo /usr/sbin/update-alternatives --install /usr/lib/jvm/jre-1.7.0 jre_1.7.0 /usr/lib/jdk_Oracle/jre 3 --slave /usr/lib/jvm-exports/jre-1.7.0 jre_1.7.0_exports /usr/lib/jvm-exports/jdk_Oracle
Linux x86_64 (64-bit Architektur)
sudo /usr/sbin/update-alternatives --install /usr/lib64/jvm/jre-1.7.0 jre_1.7.0 /usr/lib64/jdk_Oracle/jre 3 --slave /usr/lib64/jvm-exports/jre-1.7.0 jre_1.7.0_exports /usr/lib64/jvm-exports/jdk_Oracle

Um Ihre Alternativen auszuwählen (alle Architekturen):

sudo /usr/sbin/update-alternatives --config jre_1.7.0


Java Compiler

Linux x86 (32-bit Architektur)
sudo /usr/sbin/update-alternatives --install /usr/lib/jvm/java-1.7.0 java_sdk_1.7.0 /usr/lib/jdk_Oracle 3 --slave /usr/lib/jvm-exports/java-1.7.0 java_sdk_1.7.0_exports /usr/lib/jvm-exports/jdk_Oracle
Linux x86_64 (64-bit Architektur)
sudo /usr/sbin/update-alternatives --install /usr/lib64/jvm/java-1.7.0 java_sdk_1.7.0 /usr/lib64/jdk_Oracle 3 --slave /usr/lib64/jvm-exports/java-1.7.0 java_sdk_1.7.0_exports /usr/lib64/jvm-exports/jdk_Oracle

Um Ihre Alternativen auszuwählen (alle Architekturen):

sudo /usr/sbin/update-alternatives --config java_sdk_1.7.0


Aktualisierung von Oracle Java

Die Aktualisierung von Oracle Java ist Dank /usr/lib/jdk_Oracle (/usr/lib64/jdk_Oracle on x86_64) des oben kreierten Links leicht.

Linux x86 (32-bit Architektur)

1) Wiederhole die Prozedur, um jdk1.X.X_XX zu /usr/lib verschieben.

2) Dann ändere nur den symbolischen Link /usr/lib/jdk_Oracle um auf das neue Java SE zu weisen
sudo ln -s -f -T /usr/lib/jdk1.X.Y_YY/ /usr/lib/jdk_Oracle
Linux x86_64 (64-bit Architektur)

1) Wiederhole die Prozedur um jdk1.X.X_XX zu /usr/lib64 verschieben

2) Dann ändere nur den symbolischen Link /usr/lib64/jdk_Oracle um auf das neue Java SE zu weisen
sudo ln -s -f -T /usr/lib64/jdk1.X.Y_YY/ /usr/lib64/jdk_Oracle

3) Schließlich entpacke die Man-Dateien, wie oben beschrieben (alle Architekturen).

Das Java Control Panel hinzufügen

Wenn Sie Oracle Java als Ihre Standard JVM eingerichtet haben, könnten Sie /usr/lib/jdk_Oracle/bin/jcontrol (ersetze lib durch lib64 wenn Sie ein 64-bit System betreiben), z.B. die Anwendung, die Ihr Java Control Panel unterstützt, direkt vom Anwendungsmenü Ihrer favorisierten Dektopumgebung starten wollen.

Um "Java - Java Control Panel" zu Ihrem Anwendungsmenü hinzu zu fügen, müssen Sie eine reihe von symbolischen Links erzeugen, die Sie mit sudo rm /path/to/your/symlink löschen können, wenn Sie Oracle Java entfernen wollen. Sie können die symbolischen Links mit folgenden Kommandos erstellen. Sorgen Sie dafür, dass /usr/lib durch /usr/lib64 ersetzt wird, wenn Sie ein 64-bit-System haben:


Linux x86 (32-bit Architektur)
sudo ln -s /usr/lib/jdk_Oracle/jre/bin/jcontrol /usr/bin/
sudo ln -s /usr/lib/jdk_Oracle/jre/lib/desktop/icons/hicolor/16x16/apps/sun-jcontrol.png /usr/share/icons/hicolor/16x16/apps/
sudo ln -s /usr/lib/jdk_Oracle/jre/lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png /usr/share/icons/hicolor/48x48/apps/
sudo ln -s /usr/lib/jdk_Oracle/jre/lib/desktop/icons/LowContrast/16x16/apps/sun-jcontrol.png /usr/share/icons/locolor/16x16/apps/
sudo ln -s /usr/lib/jdk_Oracle/jre/lib/desktop/icons/LowContrast/48x48/apps/sun-jcontrol.png /usr/share/icons/locolor/48x48/apps/
sudo ln -s /usr/lib/jdk_Oracle/jre/lib/desktop/applications/sun_java.desktop /usr/share/applications
Linux x86_64 (64-bit Architektur)
sudo ln -s /usr/lib64/jdk_Oracle/jre/bin/jcontrol /usr/bin/
sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/desktop/icons/hicolor/16x16/apps/sun-jcontrol.png /usr/share/icons/hicolor/16x16/apps/
sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png /usr/share/icons/hicolor/48x48/apps/
sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/desktop/icons/LowContrast/16x16/apps/sun-jcontrol.png /usr/share/icons/locolor/16x16/apps/
sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/desktop/icons/LowContrast/48x48/apps/sun-jcontrol.png /usr/share/icons/locolor/48x48/apps/
sudo ln -s /usr/lib64/jdk_Oracle/jre/lib/desktop/applications/sun_java.desktop /usr/share/applications

Procedure with runtime environment only (JRE)

For Java Runtime Environment only.

Warnung!From here to the end of this section, for any sub-section (Updating Oracle Java (JRE) included), if your system has a 64-bit architecture, any occurrence of /usr/lib must be replaced with /usr/lib64. Please follow the appropriate subsections for your system architecture, when you are inserting the commands.

Install Oracle Java SE (JRE)

  • Download Oracle Java SE Runtime Environment (JRE) from the Oracle Java website. Save it to an easy to remember directory (eg. /tmp)
Download a suitable version for your system architecture. E.g.: with Oracle Java version 1.7.0_7:
Linux x86 (32-bit architecture)
jre-7u7-linux-i586.tar.gz
Linux x64 (64-bit architecture)
jre-7u7-linux-x64.tar.gz
  • Open a terminal and run:
    cd /path/to/downloaded/java
  • Decompress it with (as root, just to be sure):
    sudo tar -xzf ./jre-7uX-linux-XX.tar.gz
  • Fix permissions for the expanded directory and its content:
    sudo chown -R root:root jre1.X.X_XX/
Linux x86 (32-bit architecture)
  • Open JDK is installed by default in /usr/lib, so let's move Oracle Java to /usr/lib as well:
    sudo mv ./jre1.X.X_XX/ /usr/lib/
  • Create a symbolic link to /usr/lib/jdk1.X.X_XX/ (this will be important later for updating):
    sudo ln -s -T /usr/lib/jre1.X.X_XX/ /usr/lib/jdk_Oracle
Linux x86_64 (64-bit architecture)
  • Open JDK is installed by default in /usr/lib64, so let's move Oracle Java to /usr/lib64 as well:
    sudo mv ./jre1.X.X_XX/ /usr/lib64/
  • Create a symbolic link to /usr/lib64/jdk1.X.X_XX/ (this will be important later for updating):
    sudo ln -s -T /usr/lib64/jre1.X.X_XX/ /usr/lib64/jdk_Oracle

Inform the system (JRE)

Java application launcher

  • Compress the man files involved in your installation:
Linux x86 (32-bit architecture)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/java.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/keytool.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/orbd.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/policytool.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/rmid.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/rmiregistry.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/servertool.1)
sudo gzip $(readlink -f /usr/lib/jdk_Oracle/man/man1/tnameserv.1)
Linux x86_64 (64-bit architecture)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/java.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/keytool.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/orbd.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/policytool.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/rmid.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/rmiregistry.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/servertool.1)
sudo gzip $(readlink -f /usr/lib64/jdk_Oracle/man/man1/tnameserv.1)
  • Prepare the directory for jvm-exports (specific for version 1.7.0):
Linux x86 (32-bit architecture)
  1. sudo mkdir /usr/lib/jvm-exports/jdk_Oracle
    cd /usr/lib/jvm-exports/jdk_Oracle
    sudo ln -s /usr/lib/jdk_Oracle/lib/rt.jar jaas-1.7.0_Orac.jar
    sudo ln -s jaas-1.7.0_Orac.jar jaas-1.7.0.jar
    sudo ln -s jaas-1.7.0_Orac.jar jaas.jar
    sudo ln -s /usr/lib/jdk_Oracle/lib/jce.jar jce-1.7.0_Orac.jar
    sudo ln -s jce-1.7.0_Orac.jar jce-1.7.0.jar
    sudo ln -s jce-1.7.0_Orac.jar jce.jar
    sudo ln -s /usr/lib/jdk_Oracle/lib/rt.jar jdbc-stdext-1.7.0_Orac.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext-1.7.0.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext-3.0.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext.jar
    sudo ln -s /usr/lib/jdk_Oracle/lib/rt.jar jndi-1.7.0_Orac.jar
    sudo ln -s jndi-1.7.0_Orac.jar jndi-1.7.0.jar
    sudo ln -s /usr/lib/jdk_Oracle/lib/rt.jar jndi-cos-1.7.0_Orac.jar
    sudo ln -s jndi-cos-1.7.0_Orac.jar jndi-cos-1.7.0.jar
    sudo ln -s jndi-cos-1.7.0_Orac.jar jndi-cos.jar
    sudo ln -s jndi-1.7.0_Orac.jar jndi.jar
    sudo ln -s /usr/lib/jdk_Oracle/lib/rt.jar jndi-ldap-1.7.0_Orac.jar
    sudo ln -s jndi-ldap-1.7.0_Orac.jar jndi-ldap-1.7.0.jar
    sudo ln -s jndi-ldap-1.7.0_Orac.jar jndi-ldap.jar
    sudo ln -s /usr/lib/jdk_Oracle/lib/rt.jar jndi-rmi-1.7.0_Orac.jar
    sudo ln -s jndi-rmi-1.7.0_Orac.jar jndi-rmi-1.7.0.jar
    sudo ln -s jndi-rmi-1.7.0_Orac.jar jndi-rmi.jar
    sudo ln -s /usr/lib/jdk_Oracle/lib/jsse.jar jsse-1.7.0_Orac.jar
    sudo ln -s jsse-1.7.0_Orac.jar jsse-1.7.0.jar
    sudo ln -s jsse-1.7.0_Orac.jar jsse.jar
    sudo ln -s /usr/lib/jdk_Oracle/lib/rt.jar sasl-1.7.0_Orac.jar
    sudo ln -s sasl-1.7.0_Orac.jar sasl-1.7.0.jar
    sudo ln -s sasl-1.7.0_Orac.jar sasl.jar
  2. sudo /usr/sbin/update-alternatives --install /usr/bin/java java /usr/lib/jdk_Oracle/bin/java 3 --slave /usr/share/man/man1/java.1.gz java.1.gz /usr/lib/jdk_Oracle/man/man1/java.1.gz --slave /usr/lib/jvm/jre jre /usr/lib/jdk_Oracle --slave /usr/lib/jvm-exports/jre jre_exports /usr/lib/jvm-exports/jdk_Oracle --slave /usr/bin/keytool keytool /usr/lib/jdk_Oracle/bin/keytool --slave /usr/share/man/man1/keytool.1.gz keytool.1.gz /usr/lib/jdk_Oracle/man/man1/keytool.1.gz --slave /usr/bin/orbd orbd /usr/lib/jdk_Oracle/bin/orbd --slave /usr/share/man/man1/orbd.1.gz orbd.1.gz /usr/lib/jdk_Oracle/man/man1/orbd.1.gz --slave /usr/bin/policytool policytool /usr/lib/jdk_Oracle/bin/policytool --slave /usr/share/man/man1/policytool.1.gz policytool.1.gz /usr/lib/jdk_Oracle/man/man1/policytool.1.gz --slave /usr/bin/rmid rmid /usr/lib/jdk_Oracle/bin/rmid --slave /usr/share/man/man1/rmid.1.gz rmid.1.gz /usr/lib/jdk_Oracle/man/man1/rmid.1.gz --slave /usr/bin/rmiregistry rmiregistry /usr/lib/jdk_Oracle/bin/rmiregistry --slave /usr/share/man/man1/rmiregistry.1.gz rmiregistry.1.gz /usr/lib/jdk_Oracle/man/man1/rmiregistry.1.gz --slave /usr/bin/servertool servertool /usr/lib/jdk_Oracle/bin/servertool --slave /usr/share/man/man1/servertool.1.gz servertool.1.gz /usr/lib/jdk_Oracle/man/man1/servertool.1.gz --slave /usr/bin/tnameserv tnameserv /usr/lib/jdk_Oracle/bin/tnameserv --slave /usr/share/man/man1/tnameserv.1.gz tnameserv.1.gz /usr/lib/jdk_Oracle/man/man1/tnameserv.1.gz
Linux x86_64 (64-bit architecture)
  1. sudo mkdir /usr/lib64/jvm-exports/jdk_Oracle
    cd /usr/lib64/jvm-exports/jdk_Oracle
    sudo ln -s /usr/lib64/jdk_Oracle/lib/rt.jar jaas-1.7.0_Orac.jar
    sudo ln -s jaas-1.7.0_Orac.jar jaas-1.7.0.jar
    sudo ln -s jaas-1.7.0_Orac.jar jaas.jar
    sudo ln -s /usr/lib64/jdk_Oracle/lib/jce.jar jce-1.7.0_Orac.jar
    sudo ln -s jce-1.7.0_Orac.jar jce-1.7.0.jar
    sudo ln -s jce-1.7.0_Orac.jar jce.jar
    sudo ln -s /usr/lib64/jdk_Oracle/lib/rt.jar jdbc-stdext-1.7.0_Orac.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext-1.7.0.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext-3.0.jar
    sudo ln -s jdbc-stdext-1.7.0_Orac.jar jdbc-stdext.jar
    sudo ln -s /usr/lib64/jdk_Oracle/lib/rt.jar jndi-1.7.0_Orac.jar
    sudo ln -s jndi-1.7.0_Orac.jar jndi-1.7.0.jar
    sudo ln -s /usr/lib64/jdk_Oracle/lib/rt.jar jndi-cos-1.7.0_Orac.jar
    sudo ln -s jndi-cos-1.7.0_Orac.jar jndi-cos-1.7.0.jar
    sudo ln -s jndi-cos-1.7.0_Orac.jar jndi-cos.jar
    sudo ln -s jndi-1.7.0_Orac.jar jndi.jar
    sudo ln -s /usr/lib64/jdk_Oracle/lib/rt.jar jndi-ldap-1.7.0_Orac.jar
    sudo ln -s jndi-ldap-1.7.0_Orac.jar jndi-ldap-1.7.0.jar
    sudo ln -s jndi-ldap-1.7.0_Orac.jar jndi-ldap.jar
    sudo ln -s /usr/lib64/jdk_Oracle/lib/rt.jar jndi-rmi-1.7.0_Orac.jar
    sudo ln -s jndi-rmi-1.7.0_Orac.jar jndi-rmi-1.7.0.jar
    sudo ln -s jndi-rmi-1.7.0_Orac.jar jndi-rmi.jar
    sudo ln -s /usr/lib64/jdk_Oracle/lib/jsse.jar jsse-1.7.0_Orac.jar
    sudo ln -s jsse-1.7.0_Orac.jar jsse-1.7.0.jar
    sudo ln -s jsse-1.7.0_Orac.jar jsse.jar
    sudo ln -s /usr/lib64/jdk_Oracle/lib/rt.jar sasl-1.7.0_Orac.jar
    sudo ln -s sasl-1.7.0_Orac.jar sasl-1.7.0.jar
    sudo ln -s sasl-1.7.0_Orac.jar sasl.jar
  2. sudo /usr/sbin/update-alternatives --install /usr/bin/java java /usr/lib64/jdk_Oracle/bin/java 3 --slave /usr/share/man/man1/java.1.gz java.1.gz /usr/lib64/jdk_Oracle/man/man1/java.1.gz --slave /usr/lib64/jvm/jre jre /usr/lib64/jdk_Oracle --slave /usr/lib64/jvm-exports/jre jre_exports /usr/lib64/jvm-exports/jdk_Oracle --slave /usr/bin/keytool keytool /usr/lib64/jdk_Oracle/bin/keytool --slave /usr/share/man/man1/keytool.1.gz keytool.1.gz /usr/lib64/jdk_Oracle/man/man1/keytool.1.gz --slave /usr/bin/orbd orbd /usr/lib64/jdk_Oracle/bin/orbd --slave /usr/share/man/man1/orbd.1.gz orbd.1.gz /usr/lib64/jdk_Oracle/man/man1/orbd.1.gz --slave /usr/bin/policytool policytool /usr/lib64/jdk_Oracle/bin/policytool --slave /usr/share/man/man1/policytool.1.gz policytool.1.gz /usr/lib64/jdk_Oracle/man/man1/policytool.1.gz --slave /usr/bin/rmid rmid /usr/lib64/jdk_Oracle/bin/rmid --slave /usr/share/man/man1/rmid.1.gz rmid.1.gz /usr/lib64/jdk_Oracle/man/man1/rmid.1.gz --slave /usr/bin/rmiregistry rmiregistry /usr/lib64/jdk_Oracle/bin/rmiregistry --slave /usr/share/man/man1/rmiregistry.1.gz rmiregistry.1.gz /usr/lib64/jdk_Oracle/man/man1/rmiregistry.1.gz --slave /usr/bin/servertool servertool /usr/lib64/jdk_Oracle/bin/servertool --slave /usr/share/man/man1/servertool.1.gz servertool.1.gz /usr/lib64/jdk_Oracle/man/man1/servertool.1.gz --slave /usr/bin/tnameserv tnameserv /usr/lib64/jdk_Oracle/bin/tnameserv --slave /usr/share/man/man1/tnameserv.1.gz tnameserv.1.gz /usr/lib64/jdk_Oracle/man/man1/tnameserv.1.gz

Web browser plug-in

Linux x86 (32-bit architecture)
sudo /usr/sbin/update-alternatives --install /usr/lib/browser-plugins/javaplugin.so javaplugin /usr/lib/jdk_Oracle/lib/i386/libnpjp2.so 3 --slave /usr/bin/javaws javaws /usr/lib/jdk_Oracle/bin/javaws --slave /usr/share/man/man1/javaws.1 javaws.1 /usr/lib/jdk_Oracle/man/man1/javaws.1
Linux x86_64 (64-bit architecture)
For openSUSE 64-bit just use, instead:
sudo /usr/sbin/update-alternatives --install /usr/lib64/browser-plugins/javaplugin.so javaplugin /usr/lib64/jdk_Oracle/lib/amd64/libnpjp2.so 3 --slave /usr/bin/javaws javaws /usr/lib64/jdk_Oracle/bin/javaws --slave /usr/share/man/man1/javaws.1 javaws.1 /usr/lib64/jdk_Oracle/man/man1/javaws.1

Making Oracle Java default (JRE)

You will have to select the appropriate number after running: (This also can be used to switch between different implementations of java).

Java application launcher

sudo /usr/sbin/update-alternatives --config java

Web browser plug-in

sudo /usr/sbin/update-alternatives --config javaplugin

Setting options specific for version of installed Java JRE (option)

You can even set Oracle Java as an alternative for the JRE environment, just for a particular version of Java, in this case 1.7.0; the changes will be applied with usual update-alternatives.

Java application launcher

Linux x86 (32-bit architecture)
sudo /usr/sbin/update-alternatives --install /usr/lib/jvm/jre-1.7.0 jre_1.7.0 /usr/lib/jdk_Oracle 3 --slave /usr/lib/jvm-exports/jre-1.7.0 jre_1.7.0_exports /usr/lib/jvm-exports/jdk_Oracle
Linux x86_64 (64-bit architecture)
sudo /usr/sbin/update-alternatives --install /usr/lib64/jvm/jre-1.7.0 jre_1.7.0 /usr/lib64/jdk_Oracle 3 --slave /usr/lib64/jvm-exports/jre-1.7.0 jre_1.7.0_exports /usr/lib64/jvm-exports/jdk_Oracle

To select your alternative (all arch):

sudo /usr/sbin/update-alternatives --config jre_1.7.0


Updating Oracle Java (JRE)

Updating Oracle Java is really easy thanks to the /usr/lib/jdk_Oracle (/usr/lib64/jdk_Oracle on x86_64) link that was created above.

Linux x86 (32-bit architecture)

1) Repeat the procedure up to moving the jre1.X.X_XX to /usr/lib

2) Then just change the symbolic link /usr/lib/jdk_Oracle to point to the new Java SE
sudo ln -s -f -T /usr/lib/jre1.X.Y_YY/ /usr/lib/jdk_Oracle
Linux x86_64 (64-bit architecture)

1) Repeat the procedure up to moving the jre1.X.X_XX to /usr/lib64

2) Then just change the symbolic link /usr/lib64/jdk_Oracle to point to the new Java SE
sudo ln -s -f -T /usr/lib64/jre1.X.Y_YY/ /usr/lib64/jdk_Oracle

3) Finally re-compress the man files as described above (all architectures).

Adding Java Control Panel (JRE)

Once you set Oracle Java as your default jvm, you might want to be able to run /usr/lib/jdk_Oracle/bin/jcontrol (replace lib with lib64 if you are running a 64-bit system), e.g. the application providing your Java Control Panel, directly from the applications menu for your favourite Desktop Environment.

In order to add item "Java - Java Control Panel" to the application menu, you will need to create a couple of symbolic links, which you could delete with sudo rm /path/to/your/symlink, should you want to remove Oracle Java. You can create those symbolic links using following commands, taking care that /usr/lib must be replaced with /usr/lib64 if you own a 64-bit system:

Linux x86 (32-bit architecture)
sudo ln -s /usr/lib/jdk_Oracle/bin/jcontrol /usr/bin/
sudo ln -s /usr/lib/jdk_Oracle/lib/desktop/icons/hicolor/16x16/apps/sun-jcontrol.png /usr/share/icons/hicolor/16x16/apps/
sudo ln -s /usr/lib/jdk_Oracle/lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png /usr/share/icons/hicolor/48x48/apps/
sudo ln -s /usr/lib/jdk_Oracle/lib/desktop/icons/LowContrast/16x16/apps/sun-jcontrol.png /usr/share/icons/locolor/16x16/apps/
sudo ln -s /usr/lib/jdk_Oracle/lib/desktop/icons/LowContrast/48x48/apps/sun-jcontrol.png /usr/share/icons/locolor/48x48/apps/
sudo ln -s /usr/lib/jdk_Oracle/lib/desktop/applications/sun_java.desktop /usr/share/applications/
Linux x86_64 (64-bit architecture)
sudo ln -s /usr/lib64/jdk_Oracle/bin/jcontrol /usr/bin/
sudo ln -s /usr/lib64/jdk_Oracle/lib/desktop/icons/hicolor/16x16/apps/sun-jcontrol.png /usr/share/icons/hicolor/16x16/apps/
sudo ln -s /usr/lib64/jdk_Oracle/lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png /usr/share/icons/hicolor/48x48/apps/
sudo ln -s /usr/lib64/jdk_Oracle/lib/desktop/icons/LowContrast/16x16/apps/sun-jcontrol.png /usr/share/icons/locolor/16x16/apps/
sudo ln -s /usr/lib64/jdk_Oracle/lib/desktop/icons/LowContrast/48x48/apps/sun-jcontrol.png /usr/share/icons/locolor/48x48/apps/
sudo ln -s /usr/lib64/jdk_Oracle/lib/desktop/applications/sun_java.desktop /usr/share/applications/

Related documentation

man update-alternatives
less /var/lib/rpm/alternatives/java
less /var/lib/rpm/alternatives/javac
less /var/lib/rpm/alternatives/javaplugin

External links

Andere Java bezogene Themen

Externe Links