Почему версия Java, проверенная Oracle, отличается от версии, показанной в командной строке?

21

Вопросов

Почему версии отличаются?

Стоит ли доверять процедуре проверки Oracle?


В некоторых случаях версия, проверенная Oracle , отличается от версии, показанной в командной строке.

пример

Снимок экрана Safari, консоли Java и терминала

Этот пример, подробно

По данным Oracle в браузере:

  • Java 7 Update 9

Согласно консоли Java:

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

По javaкоманде:

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)
Грэм Перрин
источник
По какой причине вы установили ранний доступ к Java 8?
Торбьерн Равн Андерсен
@ ThorbjørnRavnAndersen спасибо за вопрос. Там теперь связанный вопрос.
Грэм Перрин

Ответы:

14

Проблемное использование терминологии

Снимок экрана страницы Oracle "Проверка версии Java"

Снимок другой страницы Oracle с тем же названием

Если Oracle описывает сначала Java для «вашей операционной системы», а затем «для вашего компьютера», загрузка более точна только для вещей, которые используют плагин Internet :

  • jre-7u13-macosx-x64.dmg устанавливает то, что требуется для этого плагина, но для вещей, которые используют Java без плагина, этот установщик из Oracle ничего не делает.

намек

В OS X: если вы хотите, чтобы среда выполнения Java (JRE) от Oracle была похожа на JRE на диаграмме ниже для обеих (a) вещей, которые используют подключаемый модуль Internet, и (b) вещей, которые используют Java без этого подключаемого модуля в:

Дополнительное объяснение

Apple распространяет Java больше, чем интернет-плагин.

Подпрограмма Oracle, изображенная выше, приводит только к плагину. Другие части дистрибутива Apple не зависят от установщика Oracle.

Установка JDK из Oracle поместит папку по следующему пути, переопределяя (не удаляя) JDK из Apple:

/Library/Java/JavaVirtualMachines

В каждом JDK есть JRE. Пожалуйста, смотрите схему ниже.

Oracle на самом деле документирует это (хотя на его поиск ушло 3,5 года). См . Страницу Oracle в командной строке OSX.

Java Runtime (JRE), которую вы загружаете с java.com или oracle.com, содержит плагин для запуска содержимого Java из вашего браузера. Чтобы использовать инструменты командной строки, вам необходимо скачать Java Development Kit (JDK). JRE и JDK разделены и могут сосуществовать в вашей системе. В Mac OS X может быть установлена ​​только одна JRE. В системе может быть установлено столько JDK, сколько вам нужно.

мысли

Огромная красная кнопка «Скачать Java сейчас» слишком упрощена. Слишком много пользователей, включая некоторых технических экспертов, в конечном итоге озадачены конечным результатом.

Если сервер Oracle обнаруживает браузер Mac, одна из следующих фраз может быть менее вводящей в заблуждение:

  • Загрузите Java для вашего браузера
  • Скачать интернет-плагин

критически

Oracle должна предложить некоторые пояснения в своем FAQ по Mac (информация и системные требования для установки и использования Mac Java 7) . Текущее недатированное издание этой страницы не имеет объяснения.

положительно

Некоторые пользователи желают или требуют, чтобы JRE интернет-плагина отличался от JRE, используемого в другом месте. Для этих пользователей эффективное приветствие Oracle может приветствоваться.

Пример:

  • в Safari и других браузерах я использую самое последнее обновление Java 7 13
  • для Wuala.app и для других вещей, которые не используют плагин Интернета, я использую ранний доступ, предварительный выпуск для разработчиков Java 8 (Java (TM) SE Runtime Environment build 1.8.0-ea-b75).

YMMV.


Справочные материалы

Справочный центр Java

  • под терминологией см. Версии .

Документация по Java Platform Standard Edition 7

На диаграмме ниже, с этой страницы, сфокусируйтесь на:

  • слева вертикальный пролет JRE
  • оранжевый верхний слой JRE -  Java Web Start и плагин Apple / Java

скриншот документации Oracle

Связанный

Как я могу переключаться между двумя версиями Java в Mountain Lion теперь, когда настройки Java исчезли?

Грэм Перрин
источник
1
Рассматриваете писать сообщения в блоге вместо того, чтобы отвечать на свои вопросы?
Турбьёрн Равн Андерсен
7
Можно задавать вопросы и отвечать на них . В течение длительного времени в Ask Different я видел путаницу вокруг версий Java, и я подумал, что своевременно сделать это вопросом.
Грэм Перрин
4
Я рад, что вы ответили на свой вопрос. Продолжайте хорошую работу!
james.garriss
@GrahamPerrin Я нашел документацию Оракула об этой путанице - я ввел ее как раз перед заголовком Мысли. Пожалуйста, отредактируйте сообщение, чтобы поставить его в лучшую позицию
user151019