Warum unterscheidet sich die von Oracle verifizierte Java-Version von der in der Befehlszeile angezeigten Version?

21

Fragen

Warum unterscheiden sich Versionen?

Sollten wir der Überprüfungsroutine von Oracle vertrauen?


In einigen Fällen unterscheidet sich die von Oracle verifizierte Version von der in der Befehlszeile angezeigten Version.

Beispiel

Screenshot von Safari, der Java-Konsole und dem Terminal

Das Beispiel im Detail

Laut Oracle im Browser:

  • Java 7 Update 9

Laut der Java-Konsole:

Java Plug-in 10.9.2.05
Using JRE version 1.7.0_09-b05 Java HotSpot(TM) 64-Bit Server VM

Nach dem javaBefehl:

sh-3.2$ java -version
java version "1.8.0-ea"
Java(TM) SE Runtime Environment (build 1.8.0-ea-b58)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b02, mixed mode)
Graham Perrin
quelle
Aus irgendeinem Grund haben Sie Java 8 Early Access installiert?
Thorbjørn Ravn Andersen
@ ThorbjørnRavnAndersen danke für die Nachfrage. Es gibt jetzt eine verknüpfte Frage.
Graham Perrin

Antworten:

14

Problematische Verwendung von Terminologie

Screenshot der Oracle-Seite "Verify Java Version"

Aufnahme einer anderen Oracle-Seite mit demselben Titel

Wo Oracle zuerst Java für "Ihr Betriebssystem" und dann "für Ihren Computer" beschreibt, ist der Download genauer nur für Dinge, die das Internet-Plug-in verwenden :

  • jre-7u13-macosx-x64.dmg Installiert, was für dieses Plug-In erforderlich ist. Für Dinge, die Java ohne das Plug-In verwenden, führt dieses Installationsprogramm von Oracle keine Aktionen aus.

Hinweis

Unter OS X: Wenn Sie möchten, dass eine Java-Laufzeitumgebung (Java Runtime Environment, JRE) von Oracle für (a) Dinge, die das Internet-Plug-in verwenden, und (b) Dinge, die Java ohne dieses Plug-in verwenden, der JRE in der folgenden Abbildung entspricht. im:

Zusätzliche Erklärung

Apples Distribution von Java ist mehr als ein Internet-Plug-In.

Die oben abgebildete Oracle-Routine führt zu nichts anderem als einem Plug-In. Andere Teile der Apple-Distribution sind vom Oracle-Installationsprogramm nicht betroffen.

Bei der Installation eines JDK von Oracle wird ein Ordner unter folgendem Pfad abgelegt, der das JDK von Apple überschreibt (nicht entfernt):

/Library/Java/JavaVirtualMachines

In jedem JDK gibt es eine JRE. Bitte beachten Sie das Diagramm unten.

Oracle dokumentiert dies tatsächlich (obwohl es 3 1/2 Jahre gedauert hat, es zu finden). Siehe Oracle-Seite in der OSX-Befehlszeile

Die Java Runtime (JRE), die Sie von java.com oder oracle.com herunterladen, enthält ein Plugin zum Ausführen von Java-Inhalten über Ihren Browser. Um die Befehlszeilentools verwenden zu können, müssen Sie das Java Development Kit (JDK) herunterladen. JRE und JDK sind getrennt und können auf Ihrem System gleichzeitig vorhanden sein. Unter Mac OS X kann nur eine JRE installiert werden. Auf einem System können beliebig viele JDKs installiert werden.

Gedanken

Der riesige rote Knopf "Java jetzt herunterladen" ist zu simpel. Zu viele Benutzer, einschließlich einiger technischer Experten, sind letztendlich vom Endergebnis verwirrt.

Wenn ein Mac-Browser vom Oracle-Server erkannt wird, kann einer der folgenden Ausdrücke weniger irreführend sein:

  • Laden Sie Java für Ihren Browser herunter
  • Laden Sie das Internet-Plugin herunter

Kritisch

Oracle sollte einige Erklärungen in den Mac FAQ (Informationen und Systemanforderungen für die Installation und Verwendung von Mac Java 7) enthalten . Der aktuellen undatierten Ausgabe dieser Seite fehlt eine Erklärung.

Positiv

Einige Benutzer möchten oder fordern, dass sich die JRE des Internet-Plug-Ins von der an anderer Stelle verwendeten JRE unterscheidet. Für diese Benutzer ist die effektive Trennung von Oracle zu begrüßen.

Ein Beispiel:

  • In Safari und anderen Browsern verwende ich das neueste Java 7 Update 13
  • Für Wuala.app und für andere Dinge, die das Internet-Plug-in nicht verwenden, verwende ich den frühen Zugriff.

YMMV.


Referenzgegenstände

Java-Hilfe

  • unter Terminologie finden Sie unter Versionen .

Java Platform Standard Edition 7-Dokumentation

In der folgenden Abbildung von dieser Seite aus konzentrieren Sie sich auf:

  • links die vertikale Spanne der JRE
  • Die orange oberste Ebene von JRE -  Java Web Start und Apple / Java Plug-in

Screenshot der Oracle-Dokumentation

verbunden

Wie kann ich in Mountain Lion zwischen den beiden Java-Versionen wechseln, wenn die Java-Einstellungen nicht mehr vorhanden sind?

Graham Perrin
quelle
1
Möchten Sie Blogeinträge verfassen, anstatt Ihre eigenen Fragen zu beantworten?
Thorbjørn Ravn Andersen
7
Es ist in Ordnung, Ihre eigenen Fragen zu stellen und zu beantworten . Ich habe in Ask Different über einen längeren Zeitraum Verwirrung um Java-Versionen gesehen. Ich dachte, es wäre an der Zeit, es zu einer Frage zu machen.
Graham Perrin
4
Ich bin froh, dass du deine eigene Frage beantwortet hast. Mach weiter so!
james.garriss
@GrahamPerrin Ich habe Oracles Dokumentation dieser Verwirrung gefunden - ich habe sie kurz vor dem Gedanken-Header eingegeben. Bitte bearbeiten Sie den Beitrag, um ihn in eine bessere Position zu bringen
user151019