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

Fragen

Warum unterscheiden sich die Versionen?

Sollten wir der Verifizierungsroutine 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 Terminal

Dieses 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

Laut 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)
Gibt es einen Grund, warum Sie Java 8 Early Access installiert haben?
@ThorbjørnRavnAndersen danke der Nachfrage. Es gibt jetzt eine verknüpfte Frage.

Antworten (1)

Problematische Verwendung von Begriffen

Screenshot der Seite „Verify Java Version“ von Oracle

Aufnahme einer anderen Oracle-Seite mit demselben Titel

Wo Oracle zuerst Java für "Ihr Betriebssystem" und dann "für Ihren Computer" beschreibt, bezieht sich der Download genauer gesagt nur auf Dinge, die das Internet-Plugin verwenden :

  • jre-7u13-macosx-x64.dmginstalliert, was für dieses Plug-in erforderlich ist, aber für Dinge, die Java ohne das Plug-in verwenden, tut dieses Installationsprogramm von Oracle nichts.

Hinweis

Unter OS X: Wenn Sie möchten, dass eine Java Runtime Environment (JRE) von Oracle wie die JRE im Diagramm unten ist, sowohl für (a) Dinge, die das Internet-Plug-in verwenden, als auch (b) Dinge, die Java ohne dieses Plug-in verwenden - in:

Zusätzliche Erklärung

Apples Java-Distribution ist mehr als ein Internet-Plugin.

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

Bei der Installation eines JDK von Oracle wird ein Ordner im folgenden Pfad abgelegt, wobei das JDK von Apple überschrieben (nicht entfernt) wird:

/Library/Java/JavaVirtualMachines

In jedem JDK gibt es eine JRE. Siehe Diagramm unten.

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

Die Java Runtime (JRE), die Sie von java.com oder oracle.com herunterladen, enthält ein Plug-in zum Ausführen von Java-Inhalten in Ihrem 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 koexistieren. Auf Mac OS X kann nur eine JRE installiert werden. Auf einem System können beliebig viele JDKs installiert sein.

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, ist einer der folgenden Sätze möglicherweise weniger irreführend:

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

Kritisch

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

Positiv

Einige Benutzer wünschen oder verlangen, dass sich die JRE des Internet-Plugins von der JRE unterscheidet, die an anderer Stelle verwendet wird. Für diese Benutzer mag Oracles effektive Trennung der Dinge begrüßenswert sein.

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 Early Access, Developer Preview Release Java 8 (Java(TM) SE Runtime Environment build 1.8.0-ea-b75).

YMMV.


Referenzartikel

Java-Hilfezentrum

  • unter Terminologie siehe Versionen .

Dokumentation zu Java Platform Standard Edition 7

Konzentrieren Sie sich im folgenden Diagramm auf dieser Seite auf:

  • links die vertikale Spanne der JRE
  • die orange oberste Schicht der JRE –  Java Web Start und Apple/Java Plug-in

Screenshot der Oracle-Dokumentation

Verwandt

Wie kann ich zwischen den beiden Java-Versionen in Mountain Lion wechseln, nachdem die Java-Einstellungen weg sind?

Haben Sie darüber nachgedacht, Blogbeiträge zu schreiben, anstatt Ihre eigenen Fragen zu beantworten?
Es ist in Ordnung, eigene Fragen zu stellen und zu beantworten . Ich habe in Ask Different über einen längeren Zeitraum Verwirrung um Java-Versionen gesehen, ich hielt es für an der Zeit, daraus eine Frage zu machen.
Ich bin froh, dass Sie Ihre eigene Frage beantwortet haben. Mach weiter so!
@GrahamPerrin Ich habe die Dokumentation von Oracles zu dieser Verwirrung gefunden - ich habe sie kurz vor dem Header Thoughts eingegeben. Bitte bearbeiten Sie den Beitrag, um ihn an einer besseren Position zu platzieren