Wie kann ich das proprietäre Java JDK 6/7/8 oder JRE von Sun / Oracle installieren?


560

Ich möchte Oracle's JRE installieren und mit dem Software Updater auf die neueste Version aktualisieren, wenn sie veröffentlicht wurden. Gibt es ein Ubuntu-Paket, das von Canonical oder Oracle bereitgestellt wird?

Vor dem Release Java 7, folgte ich auf diese Weise zu installieren Java 6 .

Aber es funktioniert nicht für Java 7 . Es gibt kein Paket sun-java7-xxx. Wie können Sie Java 7 installieren ?


11
Ich möchte auch darauf hinweisen, dass die Verwendung von OpenJDK mehr als eine praktikable Alternative ist: Es ist jetzt auch die Referenzimplementierung .
nickguletskii

11
openJdk wird weder von Bank-Applets noch von anderer Software unterstützt. Beispiel: Aptana Studio
Elzo Valugi

4
link zu "so" scheint zu verraten ... keine beschreibung eines weges?
Rogerdpack

@ElzoValugi Ich glaube, Sie benötigen möglicherweise Eistee, um Bank-Applets zu verwenden. Es basiert auf OpenJDK.
GKFX

1
@ GKFX Nein, für diese spezielle Bank funktionierte IcedTea nicht und die Bank unterstützte nur Oracle Java. In der Zwischenzeit haben sie Java beendet und ich denke, es war eine kluge Entscheidung.
Elzo Valugi

Antworten:


882

Es gibt eine ähnliche Antwort zur Installation von JRE 7.

Installieren Sie Java JDK

Der manuelle Weg

  • Laden Sie die komprimierte 32-Bit- oder 64-Bit-Linux-Binärdatei mit der Dateierweiterung ".tar.gz" herunter .

  • Dekomprimiere es

    tar -xvf jdk-8-linux-i586.tar.gz (32 Bit)

    tar -xvf jdk-8-linux-x64.tar.gz (64-Bit)

    Das JDK 8-Paket wird in ein ./jdk1.8.0Verzeichnis extrahiert . NB: Überprüfen Sie diesen Ordnernamen sorgfältig, da Oracle dies bei jedem Update gelegentlich zu ändern scheint.

  • Verschieben Sie nun das JDK 8-Verzeichnis nach /usr/lib

    sudo mkdir -p / usr / lib / jvm
    sudo mv ./jdk1.8.0 / usr / lib / jvm /
    
  • Jetzt lauf

    sudo update-alternatives --install "/ usr / bin / java" "java" "/usr/lib/jvm/jdk1.8.0/bin/java" 1
    sudo update-alternatives --install "/ usr / bin / javac" "javac" "/usr/lib/jvm/jdk1.8.0/bin/javac" 1
    sudo update-alternatives --install "/ usr / bin / javaws" "javaws" "/usr/lib/jvm/jdk1.8.0/bin/javaws" 1
    

    Dies weist Oracle JDK eine Priorität von 1 zu, was bedeutet, dass die Installation anderer JDKs diese standardmäßig ersetzt . Stellen Sie sicher, dass Sie eine höhere Priorität verwenden, wenn Oracle JDK die Standardeinstellung bleiben soll.

  • Korrigieren Sie den Dateibesitz und die Berechtigungen der ausführbaren Dateien:

    sudo chmod a + x / usr / bin / java
    sudo chmod a + x / usr / bin / javac
    sudo chmod a + x / usr / bin / javaws
    sudo chown -R root: root /usr/lib/jvm/jdk1.8.0
    

    Hinweis: Denken Sie daran, dass Java JDK über viele weitere ausführbare Dateien verfügt, die Sie wie oben beschrieben installieren können. java, javac, javawsSind die meisten wahrscheinlich häufig erforderlich. Diese Antwort listet die anderen verfügbaren ausführbaren Dateien auf.

  • Lauf

    sudo update-alternatives --config java
    

    Sie sehen eine Ausgabe ähnlich der folgenden - wählen Sie die Nummer von jdk1.8.0 - zum Beispiel 3in dieser Liste ):

    $ sudo update-alternatives --config java
    There are 3 choices for the alternative java (providing /usr/bin/java).
    
      Selection    Path                                            Priority   Status
    ------------------------------------------------------------
      0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      auto mode
      1            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      manual mode
    * 2            /usr/lib/jvm/jdk1.7.0/bin/java                   1         manual mode
      3            /usr/lib/jvm/jdk1.8.0/bin/java                   1         manual mode
    
    Press enter to keep the current choice[*], or type selection number: 3
    update-alternatives: using /usr/lib/jvm/jdk1.8.0/bin/java to provide /usr/bin/java (java) in manual mode
    

    Wiederholen Sie den obigen Vorgang für:

    sudo update-alternatives --config javac
    sudo update-alternatives --config javaws
    

Hinweis für NetBeans-Benutzer!

Sie müssen das neue JDK als Standard festlegen, um die Konfigurationsdatei zu bearbeiten.


Wenn Sie das Mozilla Firefox-Plugin aktivieren möchten:

32 bit:
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/

64 bit:
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

Hinweis: Sie können das Plugin ( libnpjp2.so) /usr/lib/firefox/plugins/für eine systemweite Installation ( /usr/lib/firefox-addons/pluginsab 15.04) mit verknüpfen . Bei Ubuntu 13.10 lautet der Pfad zum Plugin-Verzeichnis /usr/lib/firefox/browser/plugins/.

Abhängig von Ihrer Konfiguration müssen Sie möglicherweise das Apparmor-Profil für Firefox (oder andere Browser) aktualisieren /etc/apparmor.d/abstractions/ubuntu-browsers.d/java:

# Replace the two lines:
#  /usr/lib/jvm/java-*-sun-1.*/jre/bin/java{,_vm} cx -> browser_java,
#  /usr/lib/jvm/java-*-sun-1.*/jre/lib/*/libnp*.so cx -> browser_java,
# with those (or adapt to your new jdk folder name)
/usr/lib/jvm/jdk*/jre/bin/java{,_vm} cx -> browser_java,
/usr/lib/jvm/jdk*/jre/lib/*/libnp*.so cx -> browser_java,

Dann starte apparmor neu:

sudo /etc/init.d/apparmor restart

Der einfache Weg (veraltet)

Hinweis: Das PPA des WebUpd8-Teams wurde mit Wirkung zum 16. April 2019 eingestellt. Daher verfügt dieses PPA über keine Java-Dateien. Weitere Informationen finden Sie auf der PPA-Seite im Launchpad . Daher funktioniert diese Methode aus Hostorischen Gründen nicht mehr und existiert auch nicht mehr.

Die einfachste Möglichkeit, das JDK 7 zu installieren, besteht darin, es mit dem Web Up8 Oracle Java OOS zu installieren. Es wird jedoch angenommen, dass dieses PPA manchmal veraltet ist. Beachten Sie auch die Gefahren bei der Verwendung eines PPA .

Dies installiert JDK 7 (das Java JDK, JRE und das Java-Browser-Plugin enthält):

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
# or if you want JDK 8:
# sudo apt-get install oracle-java8-installer
# these commands install Oracle JDK7/8 and set them as default VMs automatically:
# sudo apt-get install oracle-java7-set-default
# sudo apt-get install oracle-java8-set-default

Quelle

NB: Bevor jemand schreit, ist dies gegen die Oracle-Umverteilungslizenz - die PPA hat tatsächlich kein Java im persönlichen Repository. Stattdessen wird der PPA direkt von Oracle heruntergeladen und installiert.

Der Script-Weg

Wenn Sie eine Neuinstallation von Ubuntu ohne vorherige Java-Installationen ausführen, automatisiert dieses Skript den oben beschriebenen Prozess, wenn Sie nicht alles in eine Konsole eingeben möchten. Denken Sie daran, dass Sie Java weiterhin von der Oracle-Website herunterladen müssen - die Links von Oracle sind nicht wgetfreundlich.

Vergewissern Sie sich vor der Verwendung , dass sich dieses Skript im selben Verzeichnis wie die .tar.gzheruntergeladene Dateierweiterung befindet und dass sich im selben Ordner keine Dateien befinden, die mit jdk-7 beginnen. Wenn dies der Fall ist, verschieben Sie sie vorübergehend aus dem Ordner. Denken Sie daran, das Skript ausführbar zu machen ( chmod +x <script's file>).

#!/bin/sh

tar -xvf jdk-7*
sudo mkdir /usr/lib/jvm
sudo mv ./jdk1.7* /usr/lib/jvm/jdk1.7.0
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1
sudo chmod a+x /usr/bin/java
sudo chmod a+x /usr/bin/javac
sudo chmod a+x /usr/bin/javaws

Wenn Sie das Plugin für Firefox installieren möchten, fügen Sie dies am Ende des Skripts hinzu:

mkdir ~/.mozilla/plugins
ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/
sudo /etc/init.d/apparmor restart

Überprüfen Sie, ob die Installation erfolgreich war

Mit dem folgenden Befehl können Sie überprüfen, ob die Installation erfolgreich war:

java -version

Du solltest sowas sehen

java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)

Sie können überprüfen, ob das JRE Mozilla-Plugin erfolgreich war, indem Sie die offizielle Oracle-Website verwenden .


Für Java 6: Wie installiere ich Oracle JDK 6?


8
Müssen Sie den gleichen Vorgang ausführen, um es zu aktualisieren?
Lucio

5
Dies funktionierte erfolgreich für mich, bash: /usr/bin/java: No such file or directorywenn ich das 32-Bit-JDK auf Ubuntu 12.04LTS installierte, mit der Ausnahme, dass ich es bekam, als ich versuchte, es auszuführen java -version. apt-get install libc6-i386Problem behoben.
Gregmac

4
Ich empfehle die Verwendung /usr/local/*anstelle von /usr/*für jede manuelle Installation wie hier. Auf diese Weise wird das, was Sie manuell installieren, nicht mit den vom Paketmanager verwalteten Dingen überfrachtet und die manuelle Installation übersichtlicher
Flint,

4
Ich empfehle dringend den manuellen Ausweg. Es ist das zuverlässigste. Der PPA funktioniert nicht mehr, da Oracle Java lizenziert ist. Im obigen Skript wird davon ausgegangen, dass Sie den Compiler und die Laufzeitumgebung verwenden und dass diese Version nicht mehr aktuell ist.
JohnMerlino

1
Wie kann ich die Manpage installieren?
Tim

173

Es gibt eine ähnliche Antwort zur Installation von JDK 8

Installieren Sie die JRE

Laden Sie die 32-Bit- oder 64-Bit-Linux-Datei "Compressed Binary File" mit der Dateierweiterung ".tar.gz" herunter und dekomprimieren Sie sie

tar -xvf jre-7-linux-i586.tar.gz

Das JRE 7-Paket wird in das Verzeichnis ./jre1.7.0 extrahiert. Verschieben Sie nun das JRE 7-Verzeichnis in /usr/lib:

sudo mv ./jre1.7.0* /usr/lib/jvm/jre1.7.0

Führen Sie anschließend Folgendes aus, um eine Liste der derzeit installierten Java-Alternativen abzurufen.

sudo update-alternatives --config java

Sie erhalten die Ausgabe als:

There are 2 choices for the alternative java (providing /usr/bin/java).

Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode

Press enter to keep the current choice[*], or type selection number:

Merken Sie sich die letzte Nummer und drücken Sie die Eingabetaste, um das Dienstprogramm zu beenden. In diesem Beispiel merken Sie sich die Nummer 2.

Wenn nur eine Alternative angezeigt wird, merken Sie sich die Nummer 0.

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.7.0/bin/java 3

Dadurch wird Ihre neue JRE 7-Installation in die Liste der Alternativen aufgenommen, dh Sie verwenden die gespeicherte Nummer + 1, dh 3 im obigen Beispiel. Konfigurieren Sie nun Java für die Verwendung von Oracle Java JRE:

sudo update-alternatives --config java

Unten sehen Sie eine ähnliche Ausgabe - wählen Sie die Nummer von jre1.7.0, das heißt 3:

There are 3 choices for the alternative java (providing /usr/bin/java).

Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
3 /usr/lib/jvm/jre1.7.0/jre/bin/java 3 manual mode

Press enter to keep the current choice[*], or type selection number: 3
update-alternatives: using /usr/lib/jvm/jre1.7.0/jre/bin/java to provide /usr/bin/java (java) in manual mode.

NB: Wenn es keine vorherige Java-Installation gab, ist die neue JRE die Standardeinstellung, und die oben genannten werden nicht angezeigt.

Überprüfen Sie die Version Ihrer neuen JRE 7-Installation:

java -version

Es sollte produzieren

java version 1.7.0
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) Client VM (build 21.0-b17, mixed mode)

Installieren Sie das Firefox / Chrome-Plugin

In einem Terminal:

mkdir ~/.mozilla/plugins

Entfernen Sie das IcedTea-Plugin, falls es installiert wurde.

sudo apt-get remove icedtea6-plugin

Entfernen Sie eine frühere Version des Java-Plugins (möglicherweise vorhanden oder nicht vorhanden):

rm ~/.mozilla/plugins/libnpjp2.so

Jetzt können Sie das Plugin installieren, indem Sie einen symbolischen Link erstellen (Sie teilen Firefox mit, wo sich das Plugin befindet). Für die Verwendung von 32-Bit-Java

ln -s /usr/lib/jvm/jre1.7.0/lib/i386/libnpjp2.so ~/.mozilla/plugins/

Für die Verwendung von 64-Bit-Java

ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

Bestätigen Sie, dass die JRE erfolgreich war, indem Sie die offizielle Oracle-Website verwenden .


10
Nach dem Ausführen sudo update-alternatives --config javaerhalte ich die folgende Ausgabe: There is only one alternative in link group java: /usr/lib/jvm/java-6-openjdk/jre/bin/java Nothing to configure.Was mache ich falsch?
Shoan

7
tolle antwort, danke! Ich frage mich , warum Oracle nicht die Zeit verbringen kann , um Pakete für diese zu machen ....
bbqchickenrobot

1
@Shoan, in diesem Fall gehen Sie zu Schritt "Wenn nur eine Alternative angezeigt wird, dann merken Sie sich die Nummer 0"
Henriique

3
Vielen Dank für diese Antwort, die Anweisungen von Oracles sind für einen Linux-Neuling Blödsinn, das hat die Sache viel einfacher gemacht!
David Barker

1
Während diese Methode funktioniert, wird apt-get nicht wissen, dass Sie Java installiert haben. Wenn Sie also versuchen, Tools wie ant, maven usw. zu installieren, möchten Sie immer noch openjdk installieren. Stattdessen hat etwas wie webupd8.org/2012/01/… für mich großartig funktioniert!
Brad

100

Hier ist eine getestete und funktionierende Lösung für die Installation von Oracle JDK 7 und all seinen Dateien, damit "javac" und alles andere funktioniert: So installieren Sie Oracle Java 7 (JDK) in Ubuntu

Hier sind die Befehle (nur zur Vereinfachung):

  1. Laden Sie die neueste Oracle JDK 7 von hier .
  2. Extrahieren Sie das heruntergeladene Oracle Java JDK-Archiv in Ihren Ausgangsordner. Es sollte ein neuer Ordner mit dem Namen "jdk1.7.0_03" (für Java JDK7 Update 3) erstellt werden. Benennen Sie es in "java-7-oracle" um und verschieben Sie es mit den folgenden Befehlen nach / usr / lib / jvm:
cd
sudo mkdir -p /usr/lib/jvm/      #just in case
sudo mv java-7-oracle/ /usr/lib/jvm/

3. Installieren Sie das von Bruce Ingalls erstellte Update Java-Paket (für Ubuntu 11.10, 11.04, 10.10 und 10.04 verfügbare Pakete):

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install update-java

4. Führen Sie nun den folgenden Befehl in einem Terminal aus, um Oracle Java JDK zu installieren:

sudo update-java

Wählen Sie die Java-Version aus, die Sie installieren möchten, und legen Sie sie als Standard fest

Nach einigen Minuten sollte Oracle Java JDK erfolgreich auf Ihrem Ubuntu-Rechner installiert sein. Sie können die Version auschecken, indem Sie die folgenden Befehle in einem Terminal ausführen:

java -version
javac -version

BEACHTEN! Dieser Teil dieser Antwort funktioniert nicht mehr, da Java die Freigabe der Binärdateien ändert. Es wurde aus historischen Gründen unverändert gelassen.

Update Oracle hat Java 8 (stabil) veröffentlicht. Verwenden Sie zur Installation die folgenden Befehle:

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

Weitere Informationen @ WebUpd8: Installieren von Oracle Java 8 in Ubuntu über das PPA-Repository [JDK8]


Ich denke, dieses Skript würde für Gnome (Tools) funktionieren, erfordert aber eine Menge zusätzlicher Installationen wie für Kubuntu-Maschinen (z. B. fehlendes gksudo auf Kubuntu).
Marcin Gil

gute und relativ schmerzfreie lösung auf Precise, habe gerade jdk1.7.0_03 drauf installiert
prusswan

Ich habe gerade diese Methode verwendet, um jdk1.7.0_03 auch auf Precise Beta 2 zu setzen. Es hat funktioniert, obwohl ein Fehler gemeldet wurde (offensichtlich in Zenity); Der Fehler scheint das Ergebnis nicht beeinflusst zu haben.
Kelley

1
versuchte es auf Ubuntu 13.04 und es funktioniert. +1 Danke
mamdouh alramadan

1
Fügen Sie die Information hinzu, dass wir, wenn wir kein vorhandenes JDK entfernen möchten, den ersten Dialog überspringen sollten, in dem vorhandenes JDK
Anwar

94

BEACHTEN! Diese Lösung funktioniert nicht mehr, da Java die Freigabe der Binärdateien ändert. Infolgedessen ist diese Antwort nicht mehr gültig. Es wurde aus historischen Gründen unverändert gelassen.

Von http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html :

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-jdk7-installer

15
Ich frage mich, warum die meisten Menschen versucht sind, die erste Antwort zu verwenden, die recht komplex ist und viel manuelle Arbeit erfordert, z. B. das Herunterladen des Installationsprogramms auf Ihren Computer und das Verschieben auf den Server. Ihre Antwort ist einfach und effektiv !!! TX
Sorin

4
@SorinSbarnea Einige Benutzer verwenden keine Repositorys von Drittanbietern, da diese nicht immer aktualisiert oder online sind.
umop aplsdn

Auf einem Ubuntu-Server musste ich "sudo apt-get install python-software-properties" verwenden, um den Befehl add-apt-repository zu erhalten.
Mark Butler

@ SorinSbarnea, weil das Repository in der Regel veraltet ist
dstarh

1
Beachten Sie, dass Webupd8 PPA auch ein Skript enthält, mit dem Oracle Java als Standard festgelegt wird (nützlich, wenn Sie mehrere JREs / JDKs installiert haben). Installieren Sie es mit sudo apt-get install oracle-java8-set-default. Beachten Sie auch, dass diese Antwort etwas veraltet ist. Sie sollten oracle-java8-installerdiese Tage wahrscheinlich installieren .
JonasCz

39

So habe ich es gerade in Oneiric installiert. Es wird eine ziemlich lange Antwort sein, aber es hat für mich funktioniert.

Laden Sie das neueste Java SDK 1.7.0 von Oracle herunter. Dann entpacke es nach / usr / lib / jvm :

cd /usr/lib/jvm/
sudo tar -xvzf ~/jdk-7-linux-x64.tar.gz
sudo mv jdk1.7.0 java-7-oracle
sudo ln -s java-7-oracle java-1.7.0-oracle

Danach habe ich die Datei .java-1.7.0-oracle.jinfo in / usr / lib / jvm mit folgendem Inhalt erstellt:

alias=java-7-oracle
priority=100
section=non-free

jre ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel
jre java /usr/lib/jvm/java-7-oracle/jre/bin/java
jre java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm
jre javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws
jre jcontrol /usr/lib/jvm/java-7-oracle/jre/bin/jcontrol
jre keytool /usr/lib/jvm/java-7-oracle/jre/bin/keytool
jre pack200 /usr/lib/jvm/java-7-oracle/jre/bin/pack200
jre policytool /usr/lib/jvm/java-7-oracle/jre/bin/policytool
jre rmid /usr/lib/jvm/java-7-oracle/jre/bin/rmid
jre rmiregistry /usr/lib/jvm/java-7-oracle/jre/bin/rmiregistry
jre unpack200 /usr/lib/jvm/java-7-oracle/jre/bin/unpack200
jre orbd /usr/lib/jvm/java-7-oracle/jre/bin/orbd
jre servertool /usr/lib/jvm/java-7-oracle/jre/bin/servertool
jre tnameserv /usr/lib/jvm/java-7-oracle/jre/bin/tnameserv
jre jexec /usr/lib/jvm/java-7-oracle/jre/lib/jexec
jdk appletviewer /usr/lib/jvm/java-7-oracle/bin/appletviewer
jdk apt /usr/lib/jvm/java-7-oracle/bin/apt
jdk extcheck /usr/lib/jvm/java-7-oracle/bin/extcheck
jdk idlj /usr/lib/jvm/java-7-oracle/bin/idlj
jdk jar /usr/lib/jvm/java-7-oracle/bin/jar
jdk jarsigner /usr/lib/jvm/java-7-oracle/bin/jarsigner
jdk java-rmi.cgi /usr/lib/jvm/java-7-oracle/bin/java-rmi.cgi
jdk javac /usr/lib/jvm/java-7-oracle/bin/javac
jdk javadoc /usr/lib/jvm/java-7-oracle/bin/javadoc
jdk javah /usr/lib/jvm/java-7-oracle/bin/javah
jdk javap /usr/lib/jvm/java-7-oracle/bin/javap
jdk jconsole /usr/lib/jvm/java-7-oracle/bin/jconsole
jdk jdb /usr/lib/jvm/java-7-oracle/bin/jdb
jdk jhat /usr/lib/jvm/java-7-oracle/bin/jhat
jdk jinfo /usr/lib/jvm/java-7-oracle/bin/jinfo
jdk jmap /usr/lib/jvm/java-7-oracle/bin/jmap
jdk jps /usr/lib/jvm/java-7-oracle/bin/jps
jdk jrunscript /usr/lib/jvm/java-7-oracle/bin/jrunscript
jdk jsadebugd /usr/lib/jvm/java-7-oracle/bin/jsadebugd
jdk jstack /usr/lib/jvm/java-7-oracle/bin/jstack
jdk jstat /usr/lib/jvm/java-7-oracle/bin/jstat
jdk jstatd /usr/lib/jvm/java-7-oracle/bin/jstatd
jdk native2ascii /usr/lib/jvm/java-7-oracle/bin/native2ascii
jdk rmic /usr/lib/jvm/java-7-oracle/bin/rmic
jdk schemagen /usr/lib/jvm/java-7-oracle/bin/schemagen
jdk serialver /usr/lib/jvm/java-7-oracle/bin/serialver
jdk wsgen /usr/lib/jvm/java-7-oracle/bin/wsgen
jdk wsimport /usr/lib/jvm/java-7-oracle/bin/wsimport
jdk xjc /usr/lib/jvm/java-7-oracle/bin/xjc
plugin xulrunner-1.9-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so
plugin mozilla-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so

Dann müssen Sie Update-Alternativen zu all den neuen Dingen mitteilen:

$ sudo -sH
Password:
# update-alternatives --quiet --install /usr/lib/xulrunner-addons/plugins/libjavaplugin.so xulrunner-1.9-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so 100
# update-alternatives --quiet --install /usr/lib/mozilla/plugins/libjavaplugin.so mozilla-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so 100
# update-alternatives --quiet --install /usr/bin/appletviewer appletviewer /usr/lib/jvm/java-7-oracle/bin/appletviewer 100 --slave /usr/share/man/man1/appletviewer.1 appletviewer.1 /usr/lib/jvm/java-7-oracle/man/man1/appletviewer.1
# update-alternatives --quiet --install /usr/bin/apt apt /usr/lib/jvm/java-7-oracle/bin/apt 100 --slave /usr/share/man/man1/apt.1 apt.1 /usr/lib/jvm/java-7-oracle/man/man1/apt.1
# update-alternatives --quiet --install /usr/bin/extcheck extcheck /usr/lib/jvm/java-7-oracle/bin/extcheck 100 --slave /usr/share/man/man1/extcheck.1 extcheck.1 /usr/lib/jvm/java-7-oracle/man/man1/extcheck.1
# update-alternatives --quiet --install /usr/bin/idlj idlj /usr/lib/jvm/java-7-oracle/bin/idlj 100 --slave /usr/share/man/man1/idlj.1 idlj.1 /usr/lib/jvm/java-7-oracle/man/man1/idlj.1
# update-alternatives --quiet --install /usr/bin/jar jar /usr/lib/jvm/java-7-oracle/bin/jar 100 --slave /usr/share/man/man1/jar.1 jar.1 /usr/lib/jvm/java-7-oracle/man/man1/jar.1
# update-alternatives --quiet --install /usr/bin/jarsigner jarsigner /usr/lib/jvm/java-7-oracle/bin/jarsigner 100 --slave /usr/share/man/man1/jarsigner.1 jarsigner.1 /usr/lib/jvm/java-7-oracle/man/man1/jarsigner.1
# update-alternatives --quiet --install /usr/bin/javac javac /usr/lib/jvm/java-7-oracle/bin/javac 100 --slave /usr/share/man/man1/javac.1 javac.1 /usr/lib/jvm/java-7-oracle/man/man1/javac.1
# update-alternatives --quiet --install /usr/bin/javadoc javadoc /usr/lib/jvm/java-7-oracle/bin/javadoc 100 --slave /usr/share/man/man1/javadoc.1 javadoc.1 /usr/lib/jvm/java-7-oracle/man/man1/javadoc.1
# update-alternatives --quiet --install /usr/bin/javah javah /usr/lib/jvm/java-7-oracle/bin/javah 100 --slave /usr/share/man/man1/javah.1 javah.1 /usr/lib/jvm/java-7-oracle/man/man1/javah.1
# update-alternatives --quiet --install /usr/bin/javap javap /usr/lib/jvm/java-7-oracle/bin/javap 100 --slave /usr/share/man/man1/javap.1 javap.1 /usr/lib/jvm/java-7-oracle/man/man1/javap.1
# update-alternatives --quiet --install /usr/bin/jconsole jconsole /usr/lib/jvm/java-7-oracle/bin/jconsole 100 --slave /usr/share/man/man1/jconsole.1 jconsole.1 /usr/lib/jvm/java-7-oracle/man/man1/jconsole.1
# update-alternatives --quiet --install /usr/bin/jdb jdb /usr/lib/jvm/java-7-oracle/bin/jdb 100 --slave /usr/share/man/man1/jdb.1 jdb.1 /usr/lib/jvm/java-7-oracle/man/man1/jdb.1
# update-alternatives --quiet --install /usr/bin/jhat jhat /usr/lib/jvm/java-7-oracle/bin/jhat 100 --slave /usr/share/man/man1/jhat.1 jhat.1 /usr/lib/jvm/java-7-oracle/man/man1/jhat.1
# update-alternatives --quiet --install /usr/bin/jinfo jinfo /usr/lib/jvm/java-7-oracle/bin/jinfo 100 --slave /usr/share/man/man1/jinfo.1 jinfo.1 /usr/lib/jvm/java-7-oracle/man/man1/jinfo.1
# update-alternatives --quiet --install /usr/bin/jmap jmap /usr/lib/jvm/java-7-oracle/bin/jmap 100 --slave /usr/share/man/man1/jmap.1 jmap.1 /usr/lib/jvm/java-7-oracle/man/man1/jmap.1
# update-alternatives --quiet --install /usr/bin/jps jps /usr/lib/jvm/java-7-oracle/bin/jps 100 --slave /usr/share/man/man1/jps.1 jps.1 /usr/lib/jvm/java-7-oracle/man/man1/jps.1
# update-alternatives --quiet --install /usr/bin/jrunscript jrunscript /usr/lib/jvm/java-7-oracle/bin/jrunscript 100 --slave /usr/share/man/man1/jrunscript.1 jrunscript.1 /usr/lib/jvm/java-7-oracle/man/man1/jrunscript.1
# update-alternatives --quiet --install /usr/bin/jsadebugd jsadebugd /usr/lib/jvm/java-7-oracle/bin/jsadebugd 100 --slave /usr/share/man/man1/jsadebugd.1 jsadebugd.1 /usr/lib/jvm/java-7-oracle/man/man1/jsadebugd.1
# update-alternatives --quiet --install /usr/bin/jstack jstack /usr/lib/jvm/java-7-oracle/bin/jstack 100 --slave /usr/share/man/man1/jstack.1 jstack.1 /usr/lib/jvm/java-7-oracle/man/man1/jstack.1
# update-alternatives --quiet --install /usr/bin/jstat jstat /usr/lib/jvm/java-7-oracle/bin/jstat 100 --slave /usr/share/man/man1/jstat.1 jstat.1 /usr/lib/jvm/java-7-oracle/man/man1/jstat.1
# update-alternatives --quiet --install /usr/bin/jstatd jstatd /usr/lib/jvm/java-7-oracle/bin/jstatd 100 --slave /usr/share/man/man1/jstatd.1 jstatd.1 /usr/lib/jvm/java-7-oracle/man/man1/jstatd.1
# update-alternatives --quiet --install /usr/bin/native2ascii native2ascii /usr/lib/jvm/java-7-oracle/bin/native2ascii 100 --slave /usr/share/man/man1/native2ascii.1 native2ascii.1 /usr/lib/jvm/java-7-oracle/man/man1/native2ascii.1
# update-alternatives --quiet --install /usr/bin/rmic rmic /usr/lib/jvm/java-7-oracle/bin/rmic 100 --slave /usr/share/man/man1/rmic.1 rmic.1 /usr/lib/jvm/java-7-oracle/man/man1/rmic.1
# update-alternatives --quiet --install /usr/bin/schemagen schemagen /usr/lib/jvm/java-7-oracle/bin/schemagen 100 --slave /usr/share/man/man1/schemagen.1 schemagen.1 /usr/lib/jvm/java-7-oracle/man/man1/schemagen.1
# update-alternatives --quiet --install /usr/bin/serialver serialver /usr/lib/jvm/java-7-oracle/bin/serialver 100 --slave /usr/share/man/man1/serialver.1 serialver.1 /usr/lib/jvm/java-7-oracle/man/man1/serialver.1
# update-alternatives --quiet --install /usr/bin/wsgen wsgen /usr/lib/jvm/java-7-oracle/bin/wsgen 100 --slave /usr/share/man/man1/wsgen.1 wsgen.1 /usr/lib/jvm/java-7-oracle/man/man1/wsgen.1
# update-alternatives --quiet --install /usr/bin/wsimport wsimport /usr/lib/jvm/java-7-oracle/bin/wsimport 100 --slave /usr/share/man/man1/wsimport.1 wsimport.1 /usr/lib/jvm/java-7-oracle/man/man1/wsimport.1
# update-alternatives --quiet --install /usr/bin/xjc xjc /usr/lib/jvm/java-7-oracle/bin/xjc 100 --slave /usr/share/man/man1/xjc.1 xjc.1 /usr/lib/jvm/java-7-oracle/man/man1/xjc.1
# update-alternatives --quiet --install /usr/bin/java-rmi.cgi java-rmi.cgi /usr/lib/jvm/java-7-oracle/bin/java-rmi.cgi 100
# update-alternatives --quiet --install /usr/bin/ControlPanel ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel 100
# update-alternatives --quiet --install /usr/bin/java java /usr/lib/jvm/java-7-oracle/jre/bin/java 100
# update-alternatives --quiet --install /usr/bin/java_vm java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm 100
# update-alternatives --quiet --install /usr/bin/javaws javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws 100
# update-alternatives --quiet --install /usr/bin/jcontrol jcontrol /usr/lib/jvm/java-7-oracle/jre/bin/jcontrol 100
# update-alternatives --quiet --install /usr/bin/keytool keytool /usr/lib/jvm/java-7-oracle/jre/bin/keytool 100
# update-alternatives --quiet --install /usr/bin/pack200 pack200 /usr/lib/jvm/java-7-oracle/jre/bin/pack200 100
# update-alternatives --quiet --install /usr/bin/policytool policytool /usr/lib/jvm/java-7-oracle/jre/bin/policytool 100
# update-alternatives --quiet --install /usr/bin/rmid rmid /usr/lib/jvm/java-7-oracle/jre/bin/rmid 100
# update-alternatives --quiet --install /usr/bin/rmiregistry rmiregistry /usr/lib/jvm/java-7-oracle/jre/bin/rmiregistry 100
# update-alternatives --quiet --install /usr/bin/unpack200 unpack200 /usr/lib/jvm/java-7-oracle/jre/bin/unpack200 100
# update-alternatives --quiet --install /usr/bin/orbd orbd /usr/lib/jvm/java-7-oracle/jre/bin/orbd 100
# update-alternatives --quiet --install /usr/bin/servertool servertool /usr/lib/jvm/java-7-oracle/jre/bin/servertool 100
# update-alternatives --quiet --install /usr/bin/tnameserv tnameserv /usr/lib/jvm/java-7-oracle/jre/bin/tnameserv 100
# update-alternatives --quiet --install /usr/bin/jexec jexec /usr/lib/jvm/java-7-oracle/jre/lib/jexec 100

Jetzt können Sie Update-Alternativen verwenden, um neu installiertes Java SDK auszuwählen.

# update-alternatives --config java              # Select java-1.7.0-oracle
# update-java-alternatives --set java-1.7.0-oracle
# exit
$

Das hat bei mir funktioniert, wenn es einen eleganteren Weg gibt (ohne PPAs von Drittanbietern), würde ich mich freuen, davon zu hören. Ich muss Firefox noch testen, wenn ich Java darin ausführen kann.


1
Funktioniert hervorragend, außer dass der letzte Befehl einen Fehler ausgibt (obwohl alles andere funktioniert, auch in Firefox / Chrome). Dies scheint von der OpenJDK6-Standardinstallation mit Oneiric zu stammen. "Update-alternatives: Fehler: Keine Alternativen für -javaplugin.so." In der versteckten Datei .java.1.6.0.jinfo scheint es eine Alternative zu -javaplugin.so zu geben. Sollen wir damit vielleicht eine dritte Alternative zu libnpjp2.so machen?
Nicholi

2
Ich beschloss, die oben von BigWhale erwähnten Schritte in ein einfaches Shell-Skript zu schreiben. Der einzige manuelle Schritt ist das Herunterladen der 64-Bit-Version von tar.gz von der Oracle-Website. Schauen Sie sich die Anleitung hier an.
Julius

1
Dies ist die einzige Lösung, die zeigt, wie man die Manpages hinzufügt!
DavidG

@DavidG Die Lösung von Alien Andrei funktioniert auch einwandfrei
Anwar

1
Auch diese Lösung ist für 64bit Ubuntu. für 32bit sollten wir i386stattamd64
Anwar am

26

EINE AKTUALISIERTE ANTWORT:

Ich schlage vor, einen der Installer aus dem webupd8team ppa folgendermaßen zu verwenden:

1) Geben Sie diese 2 Befehle in das Terminal ein, um diese PPA hinzuzufügen und Ihre Paketliste zu aktualisieren:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update

2) Geben Sie einen (oder mehrere) dieser Befehle ein, um die erforderlichen proprietären Java (s) zu installieren:

  • sudo apt-get install oracle-java6-installer
  • sudo apt-get install oracle-java7-installer
  • sudo apt-get install oracle-java8-installer
  • sudo apt-get install oracle-java9-installer

3) Wenn das jeweilige Java-Installationsskript geladen ist und anschließend die proprietären Java-Pakete heruntergeladen und installiert werden, können Sie auch den folgenden Befehl eingeben, um das Ergebnis der Installation zu überprüfen:

java -version

Sie sollten dann eine Terminal-Ausgabe (für die stabile Java8-Version) wie folgt erhalten:

java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)

Weitere Informationen: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html

Hinweis: Diese Pakete enthalten Oracle Java JDK, das Java JDK, JRE und das Java-Browser-Plugin enthält. Das webupd8team / java-PPA enthält nur diese Installationsprogramme, die einfach eine Verbindung zur Oracle Java-Download-Site herstellen und das neueste JDK installieren.


1
Danke für die Antwort. Nur so hat mein Chrome JRE funktioniert!
Fatih Karatana

Installiert es nur die JRE oder die gesamte JDK? Wenn die gesamte JDK, wie kann die Installation dann auf die JRE beschränkt werden?
Rajat Gupta

Bietet diese Art der Installation mir automatische Updates, sobald sie veröffentlicht werden und ich füge diese ppa nicht hinzu, um meinem Server unwissentlich andere Arten von Software hinzuzufügen?
Rajat Gupta

4
Hiermit wird das JDK installiert : "Dieses Paket enthält Oracle Java JDK 7 (einschließlich Java JDK, JRE und des Java-Browser-Plug-ins). Sie können jedoch nicht nur Oracle JRE installieren - das PPA bietet nur das vollständige Oracle JDK7-Paket." ref
kiri

16

Ich schätze alle vorherigen Antworten. Ich möchte diese Antwort hinzufügen , um die Installation von www.webupd8.org in 2-5 Minuten zu vereinfachen .

Diese Installation beinhaltet:

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

Das ist alles!! Überprüfen Sie nun die Java-Version

java -version

Die Ausgabe wird wie folgt sein

java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) Server VM (build 23.25-b01, mixed mode

Möglicherweise gibt es eine neue Version, die Sie dann einfach mit dem folgenden Befehl aktualisieren können:

sudo update-java-alternatives -s java-7-oracle

Umgebungsvariablen einrichten

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

Weitere Informationen finden Sie unter Installieren von Oracle Java 7 in Ubuntu über das PPA-Repository .


3
2-5 Minuten? es dauerte 77 Minuten

3
Gute Lösung. Dies sollte höher gestimmt werden. Die Installationszeit kann je nach Internetgeschwindigkeit länger als 5 Minuten dauern (der Download beträgt ca. 70 MB). Wie für die Standard - Java - Maschine einstellen, ziehe ich es : sudo update-alternatives --config java.
Landroni

15

Mit dieser Lösung erhalten Sie saubere Pakete, so wie sie vor der Einführung von Oracle mit Ubuntu ausgeliefert wurden.

Die Antwort

Erst die Antwort, dann die Erklärung. Öffnen Sie ein Terminal und kopieren Sie die folgenden Zeilen und fügen Sie sie zeilenweise ein.

wget https://raw.githubusercontent.com/ladios/oab-java6/master/oab-java.sh -O oab-java.sh
chmod +x oab-java.sh
sudo ./oab-java.sh

Dadurch werden die offiziellen sun-java6- * -Pakete erstellt und im Software-Center verfügbar gemacht. Wenn Sie auch oracle-java7- * -Pakete möchten, führen Sie das Skript folgendermaßen aus:

sudo ./oab-java.sh -7

Jetzt können Sie die Pakete mit Ihrem bevorzugten Paketmanager installieren.

Die Erklärung

Als Oracle die Distributionslizenz für Java änderte, durften Linux-Distributionen die offiziellen Pakete nicht mehr aktualisieren. Der Github-Benutzer rraptorr nahm das Debian-Skript, mit dem die Pakete bis dahin erstellt wurden, und modifizierte es, um mit den aktualisierten Downloads von Oracle zu arbeiten. Er stellt jetzt Paketskripte für SUN Java6 und Oracle Java7 zur Verfügung .

Das Skript oab.java.sh ist nur ein Wrapper, der automatisch die aktuelle Version herunterlädt, die Pakete erstellt und sie einem lokalen Repository hinzufügt.

Weitere Hinweise

Pakete, die mit dieser Methode erstellt und installiert wurden, werden nicht automatisch aktualisiert - nur wenn Sie das Skript erneut ausführen. Sie können dies umgehen, indem Sie einen Cronjob erstellen, der dieses Skript regelmäßig ausführt. Der sicherste Weg, dies zu tun, ist die Verwendung von anacron, indem Sie das Skript in /etc/cron.daily einfügen .

wget https://raw.githubusercontent.com/ladios/oab-java6/master/oab-java.sh -O /root/oab-java.sh
chmod +x /root/oab-java.sh
ln -s /root/oab-java.sh /etc/cron.daily/oab-java

Jetzt sind Ihre offiziellen Java-Pakete immer auf dem neuesten Stand.


1
Ich hatte so viele Probleme mit diesem Skript -_-
Qodeninja

@qodeninja, wie was? Ich hatte noch nie ein Problem mit diesem Skript. Das Ausführen der obigen Zeile 3 funktioniert definitiv auf jedem Ubuntu-Rechner, wenn dieser nicht kaputt ist.
Dienstag,

Ich habe eine neue Linode-Instanz von Ubuntu 10.04 und ich habe versucht, jre 7 mit diesem Skript zu installieren. Das Skript würde aufgrund fehlender Abhängigkeiten viel zu lange hängen bleiben. Dann musste ich das Skript anhalten und die Abhängigkeiten selbst mit apt-get installieren. Auch nachdem ich alles installiert hatte, schlug das Skript immer noch fehl.
Qodeninja

Das Skript macht wirklich nichts Besonderes. Klingt so, als ob etwas mit Ihrer Box nicht stimmt. Ich habe (und bin) dies von 8.04 bis 12.04 verwendet und hatte nie Probleme. Ich habe das gerade auf meinem 10.04 Server ausprobiert, der so ziemlich Vanille ist, und es funktioniert auch. Wie es sollte, weil dieses Skript nicht mehr als die alten Debian-Build-Skripte verwendet, mit denen die Packager Sun-Java * für Debian (und Ubuntu) bereitgestellt haben.
Mittwoch,

Am Lubuntu 15.04 geht es gut debian/rules:67: recipe for target 'get-orig-source' failed make: *** [get-orig-source] Error 22 make: Leaving directory '/var/local/oab/src' 11678's retcode: 2 failed
los

10

Dies funktionierte für meine Entwicklungsanforderungen, 1.6 oder 1.7 ausführen / kompilieren zu können. Zuvor habe ich nur 1.6 von einem Ubuntu apt-Paket ausgeführt.

  1. Laden Sie 1,7 gzip herunter .
  2. In Ordner extrahieren
  3. Aktualisieren Sie JAVA_HOME und PATH in der Bash-Datei

    JAVA_HOME=/opt/java/jdk1.7.0_25
    export JAVA_HOME
    
    PATH=$JAVA_HOME/bin:$PATH
    export PATH

9

Auf AMD64 müssen Sie den Befehl zum Erstellen der symbolischen Verknüpfung ein wenig ändern:

ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

nur die i386zu ändern amd64.


Guten Schrei! Hat nicht an meinem 12.04 64-Bit gearbeitet, bis ich Ihre Antwort gelesen habe. Vielen Dank!
Scaine

2
-1. Diese Antwort ist völlig aus dem Zusammenhang ..
Landroni

1
Es ist nicht die Antwort auf die Frage. Stattdessen sollte es ein Kommentar sein
Anwar

7

So stellen Sie es allen Benutzern zur Verfügung:

sudo ln -s /usr/lib/jvm/jre1.7.0/lib/i386/libnpjp2.so /usr/lib/mozilla/plugins/

für x86_64:

sudo ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so /usr/lib/mozilla/plugins/

1
Danke vielmals! Dies ist, was für mein Java fehlte, um an Firefox zu arbeiten.
ThiagoPonte

7

Holen Sie sich das JDK von Oracle / Sun; Laden Sie das Java JDK herunter unter:

http://www.oracle.com/technetwork/java/javase/overview/index.html

Laden Sie die heruntergeladene Datei herunter oder verschieben Sie sie ~zur Vereinfachung in Ihr Ausgangsverzeichnis.

Hinweis:

  • Machen Sie sich keine Gedanken darüber, welches JDK für JEE heruntergeladen werden soll.

  • Bitte überspringen Sie das Kopieren der Eingabeaufforderung "user @ host: ~ $".

  • Drücken Sie nach jedem Befehl die Eingabetaste.

In einem Terminal laufen ..

user@host:~$ sudo mkdir -p /usr/lib/jvm/
user@host:~$ sudo mv jdk-7u4-linux-i586.tar.gz /usr/lib/jvm/
user@host:~$ cd /usr/lib/jvm/
user@host:~$ sudo tar zxvf jdk-7u4-linux-i586.tar.gz

Aktivieren Sie nun Java (indem Sie es einzeln ausführen):

user@host:~$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_04/bin/java" 1
user@host:~$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_04/bin/javac" 1
user@host:~$ sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0_04/bin/javaws" 1

Schließen Sie alle Browser.

Erstellen Sie einen Mozilla Plugins-Ordner in Ihrem Home-Verzeichnis:

user@host:~$ mkdir ~/.mozilla/plugins/

Erstellen Sie einen symbolischen Link zu Ihrem Mozilla-Plug-In-Ordner. Ersetzen Sie bei 64-Bit-Systemen 'i386' durch 'amd64':

user@host:~$ ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/

Testen:

user@host:~$ java -version

Ausgabe:

java version "1.7.0_04"
Java(TM) SE Runtime Environment (build 1.7.0_04-b20)
Java HotSpot(TM) Server VM (build 23.0-b21, mixed mode)

Testen:

user@host:~$ javac -version

Ausgabe:

javac 1.7.0_04

Überprüfen Sie die JRE unter http://java.com/en/download/installed.jsp .


6

Ich schrieb einen Blog-Beitrag mit einer sehr detaillierten Erklärung, wie man Java 7 auf Natty installiert, sowohl auf OpenJDKs als auch auf Suns:

http://brunoreis.com/tech/installing-java-ubuntu-natty/

OpenJDK wird von der von Damien Lecan bereitgestellten PPA installiert, und Sun wird manuell installiert. Soweit bekannt, ist dies bis jetzt die einzige Anleitung, die sowohl in den Schritten als auch in der Erklärung korrekt ist.

Wenn Sie irgendwelche Probleme finden, posten Sie dort einen Kommentar und ich werde versuchen, ihn zu beheben.

Viel Glück.


18
Bitte versuchen Sie, nicht als Antwort auf externe Inhalte zu verweisen - geben Sie die relevantesten Teile in Ihrer Antwort an. Der Grund dafür ist, dass externe Links in Zukunft möglicherweise verschwinden und andere in Zukunft nicht mehr auf die Antwort verweisen können. Vielen Dank.
fossfreedom

Während dies theoretisch die Frage beantworten mag, wäre es vorzuziehen , die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz bereitzustellen.
Kevin Bowen

5

Ich schlage einen Weg vor, um die Installation von Oracle Java 7 zu vereinfachen.

Da Ubuntu die Java 7-Pakete von Oracle nicht bereitstellt, stelle ich eine Sammlung von Ubuntu-Paketen in meinem eigenen Paket-Repository bereit.

Die Pakete sind vollständig in Ubuntu integriert, um Java zu unterstützen. Sie können die Java 7-Alternative von Oracle mit den Standardtools "Update-Alternative" oder "Update-Java-Alternative" auswählen.

Die Hauptseite meines Beitrags ist: http://www.arakhne.org/jdk/index.html

Um die Pakete zu erhalten, müssen Sie nur mein Paket-Repository in Ihre Systemkonfiguration aufnehmen. Der Vorgang wird unter http://www.arakhne.org/ubuntu.html erläutert

Stéphane.


10
... nur freundlicher Rat - überprüfen Sie die Umverteilungslizenz von Orakel ... Sie möchten nicht, dass Orakels Anwälte Sie verfolgen!
fossfreedom

1
Bitte posten Sie keine doppelten Antworten auf verschiedene Fragen. Es schafft nur mehr Arbeit für die Moderatoren. Wenn die Fragen so ähnlich sind, dass für beide die gleiche Antwort funktioniert, ist die spätere der beiden wahrscheinlich ein Duplikat und sollte als solche gekennzeichnet werden.
RolandiXor


4

Wenn Sie in Syrien, Kuba, Libyen, Korea oder einem anderen Land leben, in dem Oracle seine Dienste verbietet, können Sie Oracle JDK 8 auf diese Weise installieren.

  1. Gehen Sie unter Verwendung von PROXY zu diesem Link und akzeptieren Sie die Bedingungen. Laden Sie dann das für Ihr System geeignete tar.gz (32 oder 64 Bit) herunter.
  2. Verschieben Sie diesen Tarball in das Downloads-Verzeichnis in Ihrem Home-Ordner.
  3. Führen Sie dieses Skript als sudo aus:


if [[ $UID != 0 ]]; then
  echo "This script neeeds to be run with sudo, like this:"
  echo -e "\n  sudo $0 $*\n"
  exit 1
fi
apt-get install python-software-properties
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java8-installer
if [ ! -f $HOME/Downloads/jdk-8u5-linux-*.tar.gz ]; then
  echo "The JDK tar.gz file was not found in $HOME/Downloads. please download it, put it in $HOME/Downloads and run again."
  exit 1
fi
cp ~/Downloads/jdk-8u5-linux-*.tar.gz /var/cache/oracle-jdk8-installer/
apt-get install oracle-java8-installer
apt-get install oracle-java8-set-default
java -version

3

Für die Installation der 32-Bit-Variante von Java unter 64-Bit-Ubuntu:

Öffnen Sie ein Terminalfenster ( Ctrl+ Alt+ Tist die schnellste Methode, wenn Sie sich dessen nicht bewusst sind) und geben Sie Folgendes ein, um es zu installieren:

sudo add-apt-repository "deb http://download.tuxfamily.org/arakhne/ubuntu precise-arakhne universe"

wget http://download.tuxfamily.org//arakhne/public.key -O - | sudo apt-key add -
apt-get install ia32-oracle-java7-jre

3

Für mich ist es ein bisschen anders. Für Ubuntu 12.04 LTS Precise (Desktop):

  1. Herunterladen jre-*.tar.gz

  2. tar -zxvf jre-*.tar.gz

  3. mkdir /usr/lib/jvm/

  4. mv jre* /usr/lib/jvm/

  5. ln -s /usr/lib/jvm/jre*/bin/java /usr/bin/

Das ist alles.

So stellen Sie sicher, dass es korrekt ist:

java -version

Wenn Sie ein Plug-In für Firefox oder Chrome hinzufügen möchten:

  1. mkdir ~/.mozilla/plugins

  2. ln -s /usr/lib/jvm/jre*/lib/i386/libnpjp2.so ~/.mozilla/plugins/

Besonderer Hinweis: Wenn Sie eine neue 64-Bit-Installation haben, kann der folgende Fehler bei der Ausführung auftreten java -version

-bash: ./java: No such file or directory

Dies wird durch eine Abhängigkeit vom libc6-i386Paket verursacht, die in 64-Bit-Ubuntu Desktop 12.04 LTS nicht standardmäßig enthalten ist. Führen Sie zum Installieren dieses Pakets Folgendes aus: sudo apt-get install libc6-i386


1
Die Anweisungen, die Sie zum Hinzufügen eines Plugins für Firefox oder Chrome bereitstellen, wirken sich überhaupt nicht auf Chrome aus. Chrome verwendet den Inhalt des .mozillaOrdners nicht.
Eliah Kagan

3

Hier ist ein Bash-Skript, das beim Einrichten der Java-Alternativen hilfreich sein kann:

#!/bin/bash

BIN_HOME="/usr/bin"
JVM_BIN_HOME="/usr/lib/jvm/jdk1.7.0_21/bin"

UPDATE_CMD="update-alternatives"
UPDATE_OPT="--install"
UPDATE_DEFAULT_PRIORITY=10

echo "Installing alternatives for Oracle JDK."
#echo "JAVA_BIN_HOME=$JAVA_BIN_HOME"
#echo "BIN_HOM=$BIN_HOME"
echo "All cmds in \"$JVM_BIN_HOME\" will be installed in \"$BIN_HOME\" with \"$UPDATE_CMD\""
echo

# 
# Calls update-alternatives.
# Param 1 is the java cmd name and optionally param 2 is the priority
# See 'man update-alternatives' for more information.
# 
function update_alt() {
    if [ -z "$2" -o "${2}xxx" = "xxx" ]; then
    echo "using default priority: $UPDATE_DEFAULT_PRIORITY"
    PRIORITY=$UPDATE_DEFAULT_PRIORITY
    else
    PRIORITY=$2
    fi

    EXEC="$UPDATE_CMD $UPDATE_OPT $BIN_HOME/$1 $1 $JVM_BIN_HOME/$1 $PRIORITY"
    echo $EXEC
    $EXEC
    return 0
}

for bin in $JVM_BIN_HOME/*
do
    if [ -x $bin ]; then
    cmd=$(basename $bin)

    if [ -x $BIN_HOME/$cmd ]; then
        echo "notice: alternative already installed, \"$cmd\""
        continue # Skip installation of alternative.
    fi

    echo "install alternative: $cmd"
    update_alt $cmd
    if [ ! -x $BIN_HOME/$cmd ]; then
        echo "error: failed to install alternative, \"$cmd\""
        exit 1
    fi
    fi
done

exit 0

3

Einfache Lösung

Anstatt das .tar.gzPaket herunterzuladen , empfehle ich Ihnen, das .rpmPaket herunterzuladen . Dann renne:

sudo apt-get install alien dpkg-dev debhelper build-essential
sudo alien --scripts jdk-7u-linux-.rpm 

wo ich glaube, ist der Strom <build>21 und das <version>hängt von Ihrer Systemarchitektur ab.

Die erste wird Alien installieren, eine Anwendung zum Konvertieren .rpmnach .deb. Der zweite Befehl führt dann alien on jdk package aus. Dies sollte ein oder zwei Minuten dauern und eine Datei mit der Bezeichnung:

jdk-7u<build>-linux-<version>.deb

Dieses Paket kann dann installiert werden, indem Folgendes ausgeführt wird:

sudo dpkg -i jdk-7u<build>-linux-<version>.deb

So habe ich es erfolgreich auf meinem Computer installiert.


1
Würde dies die Alternativen aktualisieren? wahrscheinlich nur die dateien kopieren.
DavidG

3

Ich denke, dass die beste Methode bereits veröffentlicht wurde, aber ich hatte ein Problem damit: Ich entferne nämlich Java 'manuell' von update-alternativesund habe dann versucht, dies zu tun

update-alternatives --install "/usr/bin/java/" "java" "/usr/lib/jvm/jre1.7.0_05/bin/java" 1

aber ich bekam diesen Fehler immer wieder

Update-Alternativen: Verwenden Sie /usr/lib/jvm/jre1.7.0_05/bin/java, um / usr / bin / java / (java) im automatischen Modus bereitzustellen. Update-Alternativen: Fehler: /usr/bin/java/.dpkg-tmp kann nicht zu einem Symlink zu / etc / alternatives / java gemacht werden: Keine solche Datei oder kein solches Verzeichnis

Aber zum Glück habe ich auf dieser Seite ein tolles Tutorial gefunden: http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html und es hat prima funktioniert :)


Es ist am besten, wenn Sie die wesentlichen Informationen hier veröffentlichen (um eine in sich geschlossene Antwort zu geben).
Peter Mortensen

/usr/bin/javaist kein Ordner, deshalb der Fehler
Anwar

2

Die beste Methode, die ich liefern kann, wenn Sie Java 6 unter Ubuntu 12.04 LTS (Precise Pangolin) installieren möchten, ist:

sudo apt-get purge sun-java

Sie müssen dies tun, wenn Sie möchten, dass das Mozilla-Plugin beispielsweise ohne Konflikte mit Java 7 funktioniert.

mkdir ~/src

cd ~/src
git clone https://github.com/flexiondotorg/oab-java6.git
cd ~/src/oab-java6
sudo ./oab-java.sh

Wenn es fertig ist, installiere Java:

sudo apt-get install sun-java6-plugin sun-java6-jre sun-java6-bin sun-java6-jdk

Sie können den Installationsprozess wie folgt verfolgen:

tail -f ~/src/oab-java6/oab-java.sh.log

Erläuterung : Entspricht der Antwort auf Wie kann ich das proprietäre Java JDK 6/7/8 oder JRE von Sun / Oracle installieren? .

Ref : Installieren Java6 JDK auf Ubuntu 12.04


2

Für mich wäre der Debian-Weg, ein eigenes Paket zu erstellen.

Sie installieren java-package

sudo apt-get install java-package

Sie laden das Oracle tar.gz-Archiv herunter.

Sie erstellen Ihr Deb-Paket

fakeroot make-jpkg jdk-7u79-linux-x64.tar.gz

Und du installierst es

sudo dpkg -i oracle-java7-jdk_7u79_amd64.deb

2

Laden Sie zum Beispiel Ihre gewünschte .tar.gzJDK-Version für Ihr Ubuntu-System von herunter .http://oracle.comjdk-8u102-linux-x64.tar.gz

Extrahieren Sie es beispielsweise an eine beliebige Stelle im /homeVerzeichnis /home/dante/Programs/Java. Jetzt haben wir einen Ordner mit dem Namen wie jdk1.8.0_102drinnen /home/dante/Programs/Java.

Fügen Sie diese beiden Zeilen zu Ihrer /home/dante/.profileDatei hinzu

export JAVA_HOME=/home/dante/Programs/Java/jdk1.8.0_102
export PATH=$JAVA_HOME/bin:$PATH

Starten Sie Ihr System neu und nach dem Neustart sollten Sie Ihre Java-Version java -versionim Terminal sehen.


2

Ich weiß nicht, warum die Leute so viele große Antworten gegeben haben, aber das Hinzufügen von jdk / bin zu PATH funktioniert einwandfrei:

Füge deine jdk/binzu PATH hinzu, wie hier in meinem Fall gesagt /etc/environment: -

   $ cat /etc/environment     
   PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/jdk-9.0.1/bin"    
   JAVA_HOME="/opt/jdk-9.0.1/"

1

Um Sun Java 6 auf Precise über Trusty zu installieren, können Sie die PPA- Pakete Preserved Removed Primary / Partner Archive verwenden .

sudo add-apt-repository ppa:maxb/preserved
sudo apt-get update
sudo apt-get install sun-java6-jre
sudo update-alternatives --config java

Wählen Sie dann die gewünschte Java-Version aus. Sie können überprüfen, was Sie gerade ausführen:

geek@liv-inspiron:/tmp$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)

1

Installieren von Oracle Java (JDK / JRE):

Mit dem folgenden Skript können Sie die Installation / Deinstallation von Oracle Java (JDK / JRE) von einer heruntergeladenen (tar.gz) Quelle automatisieren : oraji .

Schritte:

  1. Laden Sie die tar.gz-Quelle Ihrer gewünschten jdk / jre-Version herunter.
  2. Lauf sudo oraji /path/to/the/jdk_or_jre/archive

Deinstallation:

Führen sudo oraji -uSie die zu deinstallierende jdk / jre-Version aus und bestätigen Sie sie.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.