Java SE 6 против JRE 1.6 против JDK 1.6 - Что это значит?

Я вижу много разных терминов Java, плавающих вокруг. Мне нужно установить JDK 1.6. Я понял, что Java 6 == Java 1.6. Однако, когда я устанавливаю Java SE 6, я получаю JVM, который сообщает как версия 11.0! Кто может решить безумие?

Ответ 1

Когда вы вводите "java -version", вы видите три номера версий - версию java (по моему, "1.6.0_07" ), версию среды исполнения Java SE ( "build 1.6.0_07-b06" ) и Версия HotSpot (по моему, что "build 10.0-b23, mixed mode"). Я подозреваю, что" 11.0 ", которую вы видите, это версия HotSpot.

Обновление: HotSpot (или, как правило, используется для обозначения всей виртуальной машины), компилятор "точно в срок", встроенный в виртуальную машину Java. Бог знает, почему Солнце дает ему отдельный номер версии.

Ответ 2

  • JDK - Java Development Kit
  • JRE - среда выполнения Java.
  • Java SE - стандартная версия Java

SE определяет набор возможностей и функциональных возможностей; существуют более сложные версии (Enterprise Edition - EE) и более простые (Micro Edition - ME - для мобильных сред).

JDK включает компилятор и другие инструменты, необходимые для разработки приложений Java; JRE этого не делает. Итак, для запуска приложения Java, которое предоставляет кто-то другой, вам нужна JRE; для разработки Java-приложения вам нужен JDK.

Отредактировано: Как отметил в комментарии Крис Марасти-Георг, вы можете найти много информации на веб-сайте Sun Java, и в частности из раздел Java SE, (второй вариант, Java SE Development Kit (JDK) 6 Update 10).


Отредактировано 2011-04-06: Мир превращается, и Java теперь управляется Oracle, который купил Sun. Позже в этом году домен sun.com должен быть темным. Новая страница (на основе перенаправления) - это страница Java в Oracle Tech Network. (См. Также java.com.)


Edited 2013-01-11: И мир продолжает поворачиваться (несмотря на то, что 2012-12-21), и вот, JRE 6 вот-вот достигнет своей поддержки. Oracle говорит, что больше никаких публичных обновлений для Java 6 после февраля 2013 года.

В данной версии Java этот ответ остается в силе. JDK - это Java Development Kit, JRE - среда выполнения Java, Java SE - стандартная версия и так далее. Но версия 6 (1.6) устаревает.

Edited 2015-04-29: И с еще одной революцией вокруг солнца, настало время для поддержки Java SE 7. В апреле 2015 года Oracle подтвердил, что он больше не предоставляет общедоступные обновления для Java SE 7. Предварительный выпуск публичных обновлений для Java SE 8 - март 2017, но эта дата окончания может быть изменена (позже, не ранее).

Ответ 3

Это может помочь кому-то:

Я устанавливаю последнюю Java на моей системе для разработки, и в настоящее время это Java SE 7. Теперь давайте погрузиться в это "безумие", как вы выразились...

Все это одно и то же (когда разработчики говорят о Java для разработки):

  • Java SE 7
  • Java SE v1.7.0
  • Java SE Development Kit 7

Начиная с Java v1.5:

  • v5 = v1.5.
  • v6 = v1.6.
  • v7 = v1.7.

И мы можем предположить, что это останется для будущих версий.

Далее, для разработчиков, загрузите JDK, а не JRE.

JDK будет содержать JRE. Если вам нужны JDK и JRE, получите JDK. Оба будут установлены из единой установки JDK, как вы увидите ниже.

Как упоминалось выше:

  • JDK = Java Development Kit (разработчики нуждаются в этом, это вы, если вы код на Java)
  • JRE = Java Runtime Environment (пользователям это нужно, это каждый пользователь компьютера сегодня)
  • Java SE = Стандартная версия Java

Здесь пошаговые ссылки, которые я последовал (один шаг приводит к следующему, это все для одной загрузки) для загрузки Java для разработки (JDK):

Имейте в виду, что приведенные выше ссылки предназначены только для справочных целей, чтобы показать вам пошаговый метод того, что требуется для загрузки JDK.

И установите с настройками по умолчанию:

  • "C:\Program Files\Java\jdk1.7.0 \" (JDK)
  • "C:\Program Files\Java\jre7 \" (JRE) < --- зачем он запрашивал новую папку установки? это JRE!

Помните, что JDK содержит JRE, что имеет смысл, если вы знаете, каковы они оба. Опять же, см. Выше.

После установки дважды проверьте "C:\Program Files\Java", чтобы увидеть обе эти папки. Теперь вы знаете, что это такое и почему они там.

Я знаю, что написал это для новичков, но мне очень нравится знать вещи в деталях, поэтому я надеюсь, что это поможет.

Ответ 4

Краткая и, возможно, неправильная история версий Java

  • Java - это платформа. Он состоит из двух продуктов: набора для разработки программного обеспечения и среды выполнения.

  • Когда Java была впервые выпущена, ее, по-видимому, просто называли Java. Если вы были разработчиком, вы также знали версию, которая была нормальной "1.0", а затем "1.1". Два продукта, которые были частью платформы, также получили имена:

    • JDK - "Java Development Kit"
    • JRE - "Java Runtime Environment"
  • По-видимому, изменения в версии 1.2 настолько значительны, что они начали вызывать платформу как Java 2.

    • По умолчанию "дистрибутив" платформы получил прозвище "стандарт", чтобы противопоставить его своим братьям и сестрам. Итак, у вас было три платформы:

      • "Стандартная версия Java 2 (J2SE)"
      • "Java 2 Enterprise Edition (J2EE)"
      • "Java 2 Mobile Edition (J2ME)"
    • JDK был официально переименован в "Java Development Software Kit".

  • Когда вышла версия 1.5, костюмы решили, что им нужно "ребрендинг" продукта. Таким образом, платформа Java получила две версии - версию продукта "5" и версию разработчика "1.5" (да, правило явно указано - "drop the '1." ). Однако "2" был сохранен в имя. Так что теперь платформа официально называется "Java 2 Platform Standard Edition 5.0 (J2SE 5.0)" .

    • Иски также поняли, что сообщество разработчиков не собиралось переименовывать JDK. Но вместо того, чтобы возвращать их изменения, они просто решили отказаться от "2" от имени отдельных продуктов, которые теперь получают "J2SE Development Kit 5.0 (JDK 5.0)" и J2SE Runtime Environment 5.0 (JRE 5.0) ".
  • Когда версия 1.6 выходит, кто-то понял, что наличие двух чисел в названии было странным. Поэтому они решили полностью отказаться от суффикса 2 (и ".0" ), и мы получим "Java Platform, Standard Edition 6 (Java SE 6)" , содержащую Java SE Development Kit 6 (JDK 6) " и " Java SE Runtime Environment 6 (JRE 6) ".

  • Версия 1.7 не делала ничего глупого. Если бы мне пришлось догадаться, следующим большим изменением было бы падение "SE", так что цикл завершится, и JDK снова получит название "Java Development Kit".

Примечания

  • Для простоты была опущена куча знаков товарного знака. Поэтому предположим, что Java ™, JDK ™ и JRE ™.

  • Кажется, что у SO есть проблемы с созданием вложенных списков.

Ссылки

Эпилог

Просто отбросьте "1." от версий, напечатанных javac -version и java -version, и вам хорошо идти.

Ответ 5

С выпуском Java 5 версия продукта была отличной от версии разработчика, как описано здесь

Ответ 6

Java SE Runtime для конечного пользователя, поэтому вам нужна версия Java JRE, первая версия Java была 1, затем 1,1 - 1,2 - 1,3 - 1,4 - 1,5 - 1,6 и т.д., и обычно каждая версия называется по версии, поэтому JRE 6 означает Java jre 1.6, в любом случае есть версия обновления, например 1.6 update 45, которая называется java jre 6u45.

Из того, что я знаю, они предпочли использовать число 6 вместо 1.6, чтобы лучше отражать уровень зрелости, стабильности, масштабируемости, безопасности и т.д.