История версий Java

редактировать
Список версий языка программирования Java

Язык Java претерпел несколько изменений по сравнению с JDK 1.0, а также множество добавлений классов и пакетов в стандартную библиотеку. Начиная с J2SE 1.4, развитие языка Java регулируется Процессом сообщества Java (JCP), который использует запросы в спецификации Java (JSR) для предложений и определенных дополнений и изменений на платформе Java.. Язык указан в спецификации языка Java (JLS); изменения в JLS управляются с помощью JSR 901.

В дополнение к изменениям языка, с годами были внесены другие изменения в Библиотеку классов Java, которая выросла с нескольких сотен классов в JDK 1.0 до более трех тысяч в J2SE 5. Были введены все новые API, такие как Swing и Java2D, а также многие из оригинальных JDK 1.0 классы и методы были устаревшими. Некоторые программы позволяют преобразовывать программы Java из одной версии платформы Java в более старую (например, Java 5.0, обратно перенесенная на 1.4) (см. инструменты резервного копирования Java ).

Что касается распространения Oracle Java, версия 11 является поддерживаемой в настоящее время версией с долгосрочной поддержкой (LTS) (и в некоторой степени Java 8 LTS). («Клиенты Oracle получат поддержки Oracle Premier Support»); Oracle выпустила для «устаревшего » Java 8 LTS последнее бесплатное программное обеспечение «публичное обновление» в январе 2019 года для коммерческого использования, в то время как Oracle продолжает выпускать бесплатные общедоступные обновления для Java 8 например, для разработки и личное до использование декабря 2020 года. Java 10 - это ранее поддерживаемая версия быстрого выпуска. Поддержка Java 10 закончилась в тот же день, когда началась поддержка Java 11, в сентябре 2018 года. Java 7 больше не поддерживается публично, а Java 9 перестала распространяться, так как Java 9 была краткосрочной версией выпуска, которая была заменена Java 10, а теперь и Java 11. Для Java 11 долгосрочная поддержка Oracle не предоставляется; вместо этого ожидается, что более широкое сообщество OpenJDK, например AdoptOpenJDK или другие, выполнит эту работу.

Java 15 стала общедоступной 15 сентября 2020 г. 16 сейчас в разработке.

ВерсияДата выпуска.Окончание. Общедоступных обновленийРасширенная. Поддержка до
Старая версия, больше не поддерживается: JDK Beta1995??
Старая версия, больше не поддерживается: JDK 1.0Январь 1996??
Старая версия, больше не поддерживается: JDK 1.1Февраль 1997??
Старая версия, больше не поддерживается: J2SE 1.2декабрь 1998??
Старая версия, больше не поддерживается: J2SE 1.3Май 2000??
Старая версия, больше не поддерживается: J2SE 1.4февраль 2002 г.октябрь 2008 г.февраль 2013 г.
Старая версия, больше не поддерживается: J2SE 5.0сентябрь 2004 г.ноябрь 2009 г.апрель 2015 г.
Старая версия, больше не поддерживается: Java SE 6декабрь 2006 г.апрель 2013 г.декабрь 2018
Старая версия, более не поддерживается: Java SE 7июль 2011 г.апрель 2015 г.июль 2022 г.
Старая версия, но все еще поддерживается: Java SE 8 (LTS)март 2014 г.январь 2019 г. для Oracle (коммерческий) . На неопределенный срок для Oracle (личное использование). Не менее мая 2026 г. для AdoptOpenJDK. Не менее мая 2026 г. для Amazon CorrettoДекабрь 2030 г.
Старая версия, больше не поддерживается: Java SE 9Сентябрь 2017 г.Март 2018 г. для OpenJDKН / Д
Старая версия, больше не поддерживается: Java SE 10Март 2018 г.Сентябрь 2018 г. для OpenJDKН / Д
Старая версия, но все еще поддерживается: Java SE 11 (LTS)Сентябрь 2018 г.По крайней мере октябрь 2024 г. для AdoptOpenJDK. По крайней мере сентябрь 2027 г. для Amazon Correttoсентябрь 2026 г.
Старая версия, больше не поддерживается: Java SE 12март 2019 г.сентябрь 2019 г. для OpenJDKн / д
старая версия, больше не поддерживается: Java SE 13сентябрь 2019март 2020 для OpenJDKн / д
Старая версия, больше не поддерживается: Java SE 14март 2020сентябрь 2020 г. для OpenJDKН / Д
Текущая стабильная версия: Java SE 15сентябрь 2020 г.март 2021 г. для OpenJDKН / Д
Будущий выпуск: Java SE 16Март 2021 г.Сентябрь 2021 г. для OpenJDKН / Д
Будущий выпуск: Java SE 17 (LTS)сентябрь 2021 г.TBATBA
Условные обозначения: Старая версия Старая версия, все еще поддерживается Последняя версия Последняя предварительная версия Будущий выпуск

Содержание

  • 1 История
  • 2 JDK 1.0
  • 3 JDK 1.1
  • 4 J2SE 1.2
  • 5 J2SE 1.3
  • 6 J2SE 1.4
  • 7 J2SE 5.0
    • 7.1 Изменение версии
    • 7.2 Обновления Java 5
  • 8 Java SE 6
    • 8.1 Обновления Java 6
  • 9 Java SE 7
    • 9.1 Обновления Java 7
  • 10 Java SE 8
    • 10.1 Обновления Java 8
  • 11 Java SE 9
    • 11.1 История
    • 11.2 Обновления Java 9
  • 12 Java SE 10
    • 12.1 Java 10 обновлений
  • 13 Java SE 11
    • 13.1 Java 11 обновлений
  • 14 Java SE 12
    • 14.1 Java 12 обновлений
  • 15 Java SE 13
    • 15.1 Java 13 обновлений
  • 16 Java SE 14
    • 16.1 Обновлений Java 14
  • 17 Java SE 15
    • 17.1 Обновления Java 15
  • 18 Java SE 16
    • 18.1 Обновления Java 16
  • 19 Возможное будущее es
  • 20 реализаций
  • 21 Ссылки
  • 22 Внешние ссылк и

История

В сентябре 2017 года Марк Рейнхольд, главный архитектор платформы Java, использует изменение курса выпуска на «выпуск одной функции каждые шесть месяцев», а не текущий двухлетний график, и позже предложение вступило в силу.

JDK 1.0

Первая версия была выпущена 23 января 1996 года. Первая стабильная версия, JDK 1.0.2, называется Java 1.

JDK 1.1

Основные дополнения в выпуске от 19 февраля 1997 г. включали:

J2SE 1.2

Кодовое имя Детская площадка

Выпуск от 8 декабря 1998 г. и последующие выпуски до J2SE 5.0 были ретроспективно переименованы в Java 2, под названием версии «J2SE» (Java 2 Platform, Standard Edition ) заменено JDK для отличия платформы от J2EE (Платформа Java 2, Enterprise Edition ) и J2ME (Платформа Java 2, Micro Edition ). Это очень важный выпуск Java, поскольку он утроил размер платформы Java 1520 классов в 59 пакетах. Основные дополнения:

J2SE 1.3

Кодовое имя Kestrel

Наиболее заметными изменениями в выпуске от 8 мая 2000 г. были:

  • HotSpot включен JVM (JVM HotSpot была первой выпущенной в апреле 1999 года для J2SE 1.2 JVM)
  • RMI был изменен для поддержки дополнительной совместимости с CORBA
  • Java Naming and Directory Interface (JNDI), включенным в базовые библиотеки (ранее доступное как расширение)
  • Архитектура отладчика Java (JPDA)
  • JavaSound
  • Синтетические прокси-классы

J2SE 1.4

Кодовое имя Merlin

Выпуск от 6 февраля 2002 г. был первым выпуском платформы Java, разработанной в рамках процесса сообщества Java. как JSR 59. Основные:

  • Изменения языка
    • assert ключевое слово (указано в JSR 41 )
  • Улучшения библиотеки
    • Регулярные изменения, смоделированные на основе Perl регулярные выражения
    • Цепочка исключений позволяет исключению инкапсулировать исходное исключение нижнего уровня
    • Интернет-протокол версии 6 (IPv6 ) Поддерживает
    • Неблокирующий ввод-вывод (Java) (с именем NIO) (задано в JSR 51 )
    • Logging API (задано в JSR 47 )
    • Image I / O API для чтения и записи изображений в таких форматах, как JPEG и PNG
    • Встроенный синтаксический анализатор XML и процессор XSLT (JAXP ) (содержит в JSR 5 и JSR 63 )
    • Встроенные расширения безопасности и криптографии (JCE, JSSE, JAAS )
    • Java Web Start включено (Java Web Start был первым выпущен в марте 2001 года для J2SE 1.3) (указан в JSR 56 )
    • Preferences API (java.util.prefs)

Общедоступная поддержка и обновления безопасности для Java 1.4 закончились в октябре 2008 года. Платные обновления безопасности для клиентов Oracle закончились в феврале 2013 года.

J2SE 5.0

Кодовое имя Tiger

Выпуск от 30 сентября 2004 г. Используется номер 1.5, который до сих пор используется как внутренний номер версии. Номер был изменен на «лучше отражает уровень зрелости, стабильность, масштабируемости и безопасности J2SE». Эта версия была заложена под JSR 176..

J2SE 5.0 вступил в период окончания периода публичных обновлений 8 апреля 2008 г.; с 3 ноября 2009 г. обновления больше не доступны для общественности. Обновления доступны для платных клиентов Oracle до мая 2015 г.

Tiger добавил ряд важных новых языковых функций:

  • Generics : обеспечивает во время компиляции (статический) безопасность типа для коллекций и устраняет необходимость в большинстве приведений типов ( преобразование типов) (называется JSR 14 )
  • Метаданные : также аннотациями ; позволяет помечать языковые конструкции, такие как классы и методы, с дополнительными данными, которые могут обрабатываться утилитами, поддерживающими метаданные (заданными в JSR 175 )
  • Автобокс / распаковка: автоматическое преобразование между примитивными типами (например, int) и ными классами -оболочки (такими как Integer ) (задается JSR 201 )
  • Enumerations : конкретное слово enumсоздает безопасный упорядоченный список значений (например, Day.MONDAY, Day.TUESDAYи т. Д.); Ранее это могло быть только достигнуто с помощью нетипизи рованных постоянных целых чисел или вручную созданных классов (шаблон типизированного перечисления) (заданный JSR 201 )
  • Varargs : теперь последний параметр может быть объявлен с использованием имени типа, за которым следует три точки (например void drawtext (String... lines)); в вызывающем коде можно использовать любое количество параметров этого типа, и затем они помещаются в массив для передачи методу, или, альтернативно, вызывающий код может передать массив этого типа
  • Enhanced для каждого цикла : синтаксис цикла длярасширен специальным синтаксисом для итерации по каждому члену или любому Iterable , например, стандартные классы Collection (используется в JSR 201 )
  • Улучшенная семантика выполнения для многопоточных программ Java; новый Модель памяти Java решает проблемы сложности, эффективности и производительности предыдущих спецификаций
  • Статический импорт

Также были внесены следующие улучшения в стандартную библиотеку:

Java 5 - последний выпуск Java, официально поддерживающий Microsoft Windows 98 и Windows ME, а Windows Vista была новейшей версией Windows, с которой J2SE 5 поддерживался до того, как Java 5 перестал работать в октябре 2009 года.

Java 5 Update 5 (1.5.0_05) - последний выпуск Java для работы в Windows 95 (с установленным Internet Explorer 5.5 ) и Windows NT 4.0.

Java 5 впервые была доступна в Apple Mac OS X 10.4 (Tiger) и была версия Java по умолчанию, установленная в Apple Mac OS X 10.5 (Leopard).

Общедоступная поддержка и обновления безопасности для Java 1.5 закончились в ноябре 2009 года. Платные обновления безопасности для клиентов Oracle закончились в апреле 2015 года.

Изменение версий

В этой версии было введено новое управление версиями система для языка Java, хотя старая система управления версиями продолжала для библиотек разработчиков:

Оба номера версии «1.5.0» и «5.0» используются для идентификации этого выпуска Java 2 Platform Standard Edition. Версия «5.0» - это версия продукта, а «1.5.0» - версия для разработчиков. Число «5.0» используется для лучшего отражения уровня зрелости, стабильности, масштабируемости и безопасности J2SE.

Версия 1.5.0 или 5.0? [26]

Это соответствие продолжалось до конца более поздние версии (Java 6 = JDK 1.6, Java 7 = JDK 1.7 и т. Д.).

Обновления Java 5

Таблица обновлений Java 5
ВыпускДата выпускаОсновные моменты
Java SE 52004- 10-04Метаданные, общие типы, автоматическая упаковка и автоматическая распаковка примитивных типов, расширенный цикл для, нумерованные типы, статический импорт, форматированный ввод-вывод, варианты и утилиты параллелизма. Уменьшено время запуска и объем памяти. Совместное использование данных только для чтения между используемыми JVM. Удаленный мониторинг и управление. Новый API профилирования JVM. Программная генерация трассировки стека. Поддержка XML 1.1 с пространствами имен, XML-схемой, SAX 2.0.2, DOM Level 3 и XSLT с помощью быстрого компилятора XSLTC. Поддержка Unicode 4.0.
Java SE 5 Update 125.12.2004Было исправлено 50 ошибок.
Java SE 5, обновление 216.03.2005Исправлено несколько сбоев. Программа теперь скомпилирована с лучшей оптимизацией. Исправлены ошибки календаря и другие исправления.
Java SE 5, обновление 303.05.2005В этом выпуске исправлено несколько ошибок, включая сбои подключаемого модуля Linux Mozilla.
Java SE 5, обновление 404.07.2005С этим выпуском поддержки J2SE для 64-разрядной версии Windows перешла от версии-кандидата к финальной версии. Эта версия работает на компьютере с 64-разрядным режимом AMD64 / EM64T с Windows Server 2003 x64 Editions.
Java SE 5, обновление 518.09.2005Исправлено несколько ошибок и улучшена производительность. Последний выпуск для Windows 95 и Windows NT 4.0.
Java SE 5, обновление 607.12.2005До этого обновления апплет или приложение могло указывать версию JRE, на которой оно будет работать. Это изменилось. Все апплеты выполняются с последней версией JRE.
Java SE 5, обновление 729 мая 2006 г.Исправлено несколько ошибок и улучшена производительность.
Java SE 5, обновление 813.08.2006Исправлено несколько ошибок и улучшена производительность.
Java SE 5, обновление 912.11.2006В этом выпуске исправлено несколько незначительных отклонений.
Java SE 5, обновление 1022 декабря 2006 г.Была добавлена ​​реализация сообщения о событиях ввода-вывода epoll, поддерживаемая Linux 2.6. Исправлено множество ошибок.
Java SE 5, обновление 112008-03-08Исправлено несколько ошибок и улучшена производительность.
Java SE 5, обновление 1211.06.2007
Java SE 5, обновление 1305.10.2007Множественные уязвимости безопасности в Java Web Исправлен запуск, связанный с доступом к локальному файлу. Устранена уязвимость системы безопасности в JRE, позволяющая обойти ограничения доступа к сети. Исправлено несколько других проблем с безопасностью и мелких ошибок.
Java SE 5, обновление 14
Java SE 5, обновление 1506.03.2008Было исправлено несколько сбоев из-за выхода за пределы буфера кучи, а также несколько других ошибки. Теперь включены новые корневые сертификаты от AOL, DigiCert и TrustCenter.
Java SE 5, обновление 1623.07.2008В этом выпуске исправлено несколько недостатков безопасности, таких как DoS-уязвимости, переполнение буфера и другие ошибки, которые могли привести к сбоям или которые предоставит апплетам доступ к определенным системным ресурсам. Эти уязвимости были обнаружены в Java Web Start, в агенте управления Java Management Extensions (JMX) и в функциях обработки XML-данных.
Java SE 5, обновление 1712.03.2008Реализация кодировки UTF-8 была обновлена ​​для обработки не самой короткой формы байтовых последовательностей UTF-8, что привело к несовместимости из предыдущих выпусков. Добавлены новые корневые сертификаты. Исправлено множество ошибок.
Java SE 5 (обновление 18)25 марта 2009 г.Решено несколько проблем безопасности. Поведение функции JNDI для хранения и извлечения объектов Java в каталоге LDAP было немного изменено. Добавлено пять новых корневых сертификатов. Исправлено множество ошибок.
Java SE 5 (обновление 19)29 мая 2009 г.Добавлена ​​поддержка для нескольких конфигураций системы. Добавлена ​​поддержка сервисных тегов. Было исправлено множество ошибок, в том числе несколько сбоев и утечек памяти.
Java SE 5, обновление 2006.08.2009Было устранено несколько уязвимостей системы безопасности, таких как потенциальный доступ к системе со стороны сторонадежных апплетов и целочисленные переполнения при обработке изображений и в Unpack200. Добавлено несколько новых корневых сертификатов. Исправлено множество других мелких ошибок.
Java SE 5 (обновление 21)09.09.2009Исправлено множество мелких ошибок.
Java SE 5, обновление 2204.11.2009Этот выпуск знаменует окончание срока службы (EOSL) для Java 5 и является его последней общедоступной версией. Было исправлено несколько уязвимостей системы безопасности, о которых сообщалось как Sun Alerts 269868, 270474, 270475 и 270476. Исправлено несколько других ошибок. Кроме того, были добавлены два новых корневых сертификата.
Java SE 5, обновление 2313.01.2010Недоступно для всех, доступно только через программу поддержки Java SE и в рекомендованном кластере набора исправлений Solaris 10; 32 исправления безопасности.
Java SE 5, обновление 2415.04.2010Доступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 2 исправления безопасности.
Java SE 5, обновление 2507.07.2010Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 26 исправлений безопасности.
Java SE 5, обновление 2612.10.2010Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 2 исправления безопасности.
Java SE 5, обновление 2708.12.2010Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 22 исправления безопасности.
Обновление 28 для Java SE 515.02.2011Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 22 исправления безопасности
Обновление Java SE 5 292011-03-21Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 21 исправление безопасности.
Java SE 5, обновление 3007.06.2011Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности.
Обновление 31 для Java SE 516.08.2011Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 10 исправлений безопасности.
Java SE 5, обновление 3218.10.2011Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 20 исправлений безопасности
Обновление Java SE 5 332011-12-12Не общедоступно, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 21 исправление безопасности.
Обновление Java SE 5 3414.02.2012Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 14 исправлений безопасности
Обновление Java SE 5 352012-04-26Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности.
Java SE 5, обновление 362012-06-12Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 14 исправлений безопасности
Обновление Java SE 5 3814.08.2012Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 30 исправлений безопасности
Обновление Java SE 5 3919.02.2013Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 50 исправлений безопасности
Обновление Java SE 5 4019.02.2013Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности
Обновление Java SE 5 4104.03.2013Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 2 исправления безопасности
Обновление Java SE 5 4516.04.2013Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 42 исправления безопасности
Обновление Java SE 5 5118.06.2013Недоступно для всех, доступно только через программу поддержки Java SE и в рекомендованном кластере набора исправлений Solaris 10; 40 исправлений безопасности
Обновление Java SE 5 552013-10-15Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 51 исправление безопасности
Обновление Java SE 5 612014-01-14Недоступно для всех, доступно только через программу поддержки Java SE и в рекомендованном кластере набора исправлений Solaris 10; 36 исправлений безопасности
Обновление Java SE 5 652014-04-15Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 37 исправлений безопасности
Обновление Java SE 5 712014-07-15Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 20 исправлений безопасности
Обновление Java SE 5 752014-10-16Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 25 исправлений безопасности
Обновление Java SE 5 812015-01-21Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 19 исправлений безопасности
Обновление Java SE 5 852015-04-14Недоступно для всех, доступно только через программу поддержки Java SE и в рекомендованном кластере набора исправлений Solaris 10; 14 исправлений безопасности

Java SE 6

Кодовое имя Mustang

В версии, выпущенной 11 декабря 2006 г., Sun заменила имя «J2SE» на Java SE и удалил ".0" из номера версии. Внутренняя нумерация для разработчиков остается 1.6.0.

Эта версия была разработана под JSR 270.

На этапе разработки новые сборки, включая улучшения и исправления ошибок, выпускались примерно еженедельно. Бета-версии были выпущены в феврале и июне 2006 г., а окончательный выпуск состоялся 11 декабря 2006 г.

Основные изменения, включенные в эту версию:

  • Прекращена поддержка старых версий Win9x; неофициально Java 6 Update 7 была последней версией Java, работающей с этими версиями Windows. Считается, что это связано с основными изменениями в обновлении 10.
  • Поддержка языка сценариев (JSR 223 ): общий API для тесной интеграции с языками сценариев и встроенный Mozilla JavaScript Интеграция с Rhino.
  • Значительные улучшения производительности для базовой платформы и Swing.
  • Улучшенная поддержка веб-сервисов через JAX-WS (JSR 224 ).
  • Поддержка JDBC 4.0 (JSR 221 ).
  • Java Compiler API (JSR 199 ): API, позволяющий использовать программу Java для выбора и запуска компилятора Java программным способом.
  • Обновление JAXB до версии 2.0: включая интеграцию анализатора StAX.
  • Поддержка подключаемых модулей аннотации ().
  • Многие улучшения GUI, такие как интеграция SwingWorker в API, сортировка и фильтрация таблиц и истинный Swing двойная буферизация (устранение эффекта серой зоны).
  • Усовершенствования JVM включают: синхронизацию и компилятор perf оптимизация организации, новые алгоритмы и обновления существующих алгоритмов сборки мусора, а также производительность запуска приложений.

Java 6 может быть установлена ​​в Mac OS X 1 0.5 (Leopard), работающем на 64-битной (Core 2 Duo и выше) процессорных машин. Java 6 также поддерживается как 32-битными, так и 64-битными машинами под управлением Mac OS X 10.6 (Snow Leopard).

Срок поддержки Java 6 подошел к концу в феврале 2013 г., когда все общедоступные обновления, включая обновления безопасности, были запланированы для остановки. Oracle выпустила еще два обновления для Java 6 в марте и апреле 2013 года, в которых были исправлены некоторые уязвимости системы безопасности.

Обновления Java 6

После выпуска Java 6 Sun, а затем и Oracle выпустили несколько обновлений, которые, не изменяя при этом общедоступный API, повышенное удобство использования для конечных пользователей или исправленные ошибки.

Таблица обновлений Java 6
ВыпускДата выпускаОсновные моменты
Java SE 623 декабря 2006 г.В этом выпуске добавлено множество улучшений в области веб-служб, сценариев, баз данных, подключаемых аннотаций и безопасности, а также качества, совместимости и стабильности. JConsole теперь официально поддерживается. Добавлена ​​поддержка Java DB.
Java SE 6, обновление 12007-05-07
Java SE 6, обновление 22007-07-03
Java SE 6, обновление 303.10.2007
Java SE 6, обновление 42008-01-14HotSpot VM 10
Java SE 6, обновление 52008 -03-05Исправлено несколько недостатков безопасности. Теперь включены новые корневые сертификаты от AOL, DigiCert и TrustCenter.
Java SE 6, обновление 616.04.2008Введено обходное решение печально известной проблемы утверждения блокировки Xlib / XCB. Исправлена ​​утечка памяти при использовании аутентификации Kerberos с LoginContext. Исправлено несколько других ошибок.
Java SE 6, обновление 7Неофициально, Java SE 6 Update 7 (1.6.0.7) - это последняя версия Java, которая, как было показано, работает с операционными системами семейства Win9x
Java SE 6 Update 102008-10-15ВМ HotSpot 11. Основные изменения для этого обновления включают:
  • Java Deployment Toolkit, набор JavaScript функций для упрощает развертывание апплетов и приложений Java Web Start.
  • Java Kernel, небольшой установщик, включающий только наиболее часто используемые классы JRE. При необходимости загружаются другие пакеты.
  • Улучшенное средство обновления.
  • Улучшенное управление версиями и поддержка pack200: поддержка на стороне сервера больше не требуется.
  • Java Quick Starter, чтобы улучшить холод время запуска.
  • Повышена производительность графических примитивов Java2D в Windows с использованием Direct3D и аппаратного ускорения.
  • Новый Swing внешний вид называется Nimbus и основан на synth.
  • Java Plug-In следующего поколения: апплеты теперь выполняются в отдельном процессе и поддерживают многие функции приложений Web Start.
Java SE 6, обновление 112008-12-0313 исправлений безопасности
Java SE 6, обновление 122008-12-12Нет исправлений безопасности; 64-битный плагин Java (только для 64-битных веб-браузеров); Windows Server 2008 поддержка; улучшения производительности графики и приложений JavaFX
Java SE 6, обновление 1324.03.20097 исправлений безопасности, JNDI сохраняет и извлекает объекты Java в LDAP слегка изменено, изменение JMX (createMBeanunregisterMBean), добавлено 4 новых корневых сертификата
Java SE 6, обновление 1428 мая 2009 г.HotSpot VM 14. Этот выпуск включает обширные обновления производительности для компилятор JIT, сжатые указатели для 64-битных машин, а также поддержка сборщика мусора с низкой паузой G1 (Garbage First).

The -XX: + DoEscapeAnalysisопция указывает HotSpot JIT-компилятору использовать escape-анализ, чтобы определить, могут ли локальные объекты быть выделены в стеке вместо куче.

Некоторые разработчики заметили проблему, появившуюся в этом выпуске, из-за которой отладчики случайно пропускают точки останова. У Sun есть соответствующая ошибка, которая отслеживает проблему. Обходной путь применяется к виртуальным машинам клиента и сервера. Использование параметра -XX: + UseParallelGCпредотвратит сбой. Другой обходной путь - откатиться до обновления 13 или обновить до обновления 16.

Java SE 6, обновление 1504.08.2009Добавлена ​​возможность установки исправлений на месте
Java SE 6, обновление 1611.08.2009Исправлена ​​проблема, представленная в обновлении 14, из-за которой отладчики пропускали точки останова
Java SE 6, обновление 1704.11.2009Исправления безопасности; два новых корневых сертификата
Java SE 6 Update 1813.01.2010Без исправлений безопасности; Hotspot VM 16; поддержка Ubuntu 8.04 LTS Desktop Edition, SLES 11, Windows 7, Red Hat Enterprise Linux 5.3, Firefox 3.6, VisualVM 1.2; обновленная БД Java; множество улучшений производительности
Java SE 6 Update 1930.03.2010Исправления безопасности; изменения корневого сертификата: семь новых, три удаленных, пять замененных более надежными алгоритмами подписи; временное исправление для атаки повторного согласования TLS
Java SE 6, обновление 202010-04-152 исправления безопасности
Java SE 6, обновление 212010- 07-07Нет исправлений безопасности; Hotspot VM 17; поддержка Red Hat Enterprise Linux 5.4 и 5.5, Oracle Enterprise Linux 4.8, 5.4, 5.5; Поддержка Google Chrome 4; поддержка настраиваемых индикаторов хода загрузки; VisualVM 1.2.2
Java SE 6 (обновление 22)12.10.201029 исправлений безопасности; RFC 5746 поддержка
Java SE 6, обновление 2308.12.2010Нет исправлений безопасности; Hotspot VM 19; улучшенная поддержка языков с письмом справа налево
Java SE 6 (обновление 24)2011-02-1521 исправление безопасности; обновлена ​​Java DB
Java SE 6 Update 2521.03.2011Без исправлений безопасности; Hotspot VM 20; поддержка Internet Explorer 9, Firefox 4 и Chrome 10; улучшен BigDecimal; includes "tiered" compilation in the Server VM that enables it to start quickly as does the Client VM, while achieving better peak performance (this feature is enabled by specifying -serverand -XX:+TieredCompilationcommand options)
Java SE 6 Update 262011-06-0717 new security fixes; last version compatible with Windows Vista SP1
Java SE 6 Update 272011-08-16No security fixes; certification for Firefox 5
Java SE 6 Update 292011-10-1820 security fixes, various bug fixes
Java SE 6 Update 302011-12-12No security fixes; fix for SSL regression in Update 29; support for Red Hat Enterprise Linux 6
Java SE 6 Update 312012-02-1414 security fixes and one bug fix; last version work reliably for Windows 2000
Java SE 6 Update 322012-04-26No security fixes, various bug fixes
Java SE 6 Update 332012-06-1214 security fixes, improved VM configuration file loading
Java SE 6 Update 342012-08-14No security fixes, various bug fixes
Java SE 6 Update 352012-08-30Contains a security-in-depth fix
Java SE 6 Update 372012-10-1630 security fixes
Java SE 6 Update 382012-12-11Various bug fixes
Java SE 6 Update 392013-02-0150 security fixes
Java SE 6 Обновление 4119.02.20135 исправлений безопасности
Java SE 6 Обновление 4304.03.20132 безопасность исправляет
Java SE 6 Update 4516.04.201342 исправления безопасности; другие изменения; последнее общедоступное обновление.
Java SE 6 Update 5118.06.2013Не общедоступно, доступно только через программу поддержки Java SE и в Apple Update для OS X Snow Leopard, Лев и горный лев; до 40 исправлений безопасности
Обновление Java SE 6 652013-10-15Недоступно для всех, доступно только через программу поддержки Java SE и в Apple Update для OS X Snow Леопард, лев и горный лев; не менее 11 критических исправлений безопасности
Java SE 6 Update 712014-01-14Недоступно для публичной загрузки; 33 исправления
Обновление Java SE 6 752014-04-15Недоступно общедоступно, доступно только через программу поддержки Java SE и в рекомендованном кластере набора исправлений Solaris 10 No. # 54; 25 исправлений безопасности
Обновление Java SE 6 812014-07-15Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 11 исправлений безопасности
Обновление Java SE 6 8516.10.2014Не общедоступно, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 18 исправлений безопасности
Обновление Java SE 6 912015-01-21Версии Linux x64 и Windows i586 доступны как эталонная реализация Java SE 6. Другие версии доступны только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 15 исправлений безопасности
Обновление Java SE 6 952015-04-14Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 14 исправлений безопасности
Обновление Java SE 6 1012015-07-15Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 18 исправлений безопасности Сертификация для IE 10 и 11 была введена в 1.6.0_101
Java SE 6 Update 1052015-10-20Общедоступно, доступно только через Java SE Программа поддержки и рекомендованный кластер наборов исправлений Solaris 10; 17 исправлений безопасности
Обновление Java SE 6 11120.01.2016Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 13 исправлений безопасности
Обновление Java SE 6 11305.02.2016Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности
Обновление Java SE 6 1152016-04-21Недоступно общедоступно, доступно только через программу поддержки Java SE и в Solaris 10's Recomm завершился кластер наборов исправлений; 8 исправлений безопасности
Обновление Java SE 6 12119.07.2016Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 15 исправлений безопасности
Обновление Java SE 6 13118.10.2016Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 13 исправлений безопасности
Обновление Java SE 6 14117.01.2017Недоступно для всех, доступно только через программу поддержки Java SE и в рекомендованном кластере набора исправлений Solaris 10; 17 исправлений безопасности
Обновление Java SE 6 15118 апреля 2017 г.Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 10 исправлений безопасности
Обновление Java SE 6 16118.07.2017Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности
Обновление Java SE 6 17120.10.2017Недоступно общедоступно, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 7 исправлений безопасности
Обновление Java SE 6 18116.01.2018Недоступно общедоступно, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 12 исправлений безопасности
Обновление Java SE 6 19117.04.2018Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 7 исправлений безопасности
Обновление Java SE 6 20117.07.2018Недоступно общедоступно, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 3 исправления безопасности
Обновление Java SE 6 21118.10.2018Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 8 исправлений безопасности

Java SE 7

Java 7 (кодовое имя Dolphin ) - крупное обновление, выпущенное 7 июля 2011 г. и доступное для разработчиков 28 июля 2011 г. Период развития состоял из тринадцати этапов; 6 июня 2011 года завершился последний из тринадцати этапов. В среднем за один этап выпускалось 8 сборок (обычно включаемых улучшения и исправления ошибок). Список функций в проекте OpenJDK 7 перечисляет многие изменения.

Дополнения в Java 7 включают:

  • JVM поддержку динамических языков, с новым байт-кодом invokedynamicпод JSR-292, после работы по созданию прототипа в настоящее время выполняется на многоязычной представленной машине
  • сжатые 64-разрядные указатели (доступны в Java 6 с -XX: + UseCompressedOops)
  • Эти небольшие языковые изменения (сгруппированы в рамках проекта под названием Coin) :
  • Строки в переключателе
  • Автоматическое управление ресурсами в инструкции try
  • Улучшенный вывод типа для создания универсального экземпляра, также известный как ромбовидный оператор <>
  • Упрощенное объявление методом varargs
  • Двоичные целочисленные литералы
  • Разрешение подчеркивания в числовых литералах
  • Перехватенных типов исключений и повторное создание исключений с улучшенной проверкой типов
  • Утилиты параллелизма в JSR 166
  • Новая библиотека файлов ввода-вывода (определе нная JSR 203), добавляющая поддержка нескольких файловых систем, метаданных файлов и символических ссылок. Новые пакеты - java.nio.file, java.nio.file.attributeи java.nio.file.spi
  • Timsort используется для сортировки коллекций и массивов объектов вместо сортировка слиянием
  • Поддержка на уровне библиотеки для алгоритмов криптографии с эллиптической кривой
  • Конвейер XRender для Java 2D, который предоставляет функции обслуживания, характерных для современных Графические процессоры
  • Новые API для платформы графических функций, изначально реализованных в версии 6u10 как неподдерживаемые API
  • Расширенная поддержка на уровне библиотеки новых сетевых протоколов, включая SCTP и Sockets Direct Протокол
  • Upstream обновляет до XML и Unicode
  • набор правил развертывания Java

Lambda (реализация Java лямбда-функции ), Jigsaw (реализация Java модулей ), часть Coin были исключены из Java 7 и выпущены как часть Java 8 (за исключением Jigsaw, который был в ыпущен в Java 9).

Java 7 была версией по умолчанию для загрузки на java.com с апреля 2012 г. Был выпущен ntil Java 8.

Обновления Java 7

Oracle выпускала общедоступные обновления для семейства Java 7 ежеквартально до апреля 2015 года, когда продукт достиг конца своей общедоступности. Дальнейшие обновления для JDK 7, которые планируется продлить до июля 2022 года, доступны только для клиентов с контрактом на поддержку.

Таблица обновлений Java 7
ВыпускДата выпускаОсобенности
Java SE 728.07.2011Первый выпуск; HotSpot VM 21
Java SE 7, обновление 118.10.201120 исправлений безопасности, исправления других ошибок
Java SE 7 Update 212.12.2011Никаких исправлений безопасности; HotSpot VM 22; повышение надежности и производительности; поддержка Solaris 11 и Firefox 5 и новее; JavaFX в составе Java SE JDK, улучшения для приложений, развертываемых через Интернет
Java SE 7, обновление 314 февраля 2012 г.14 исправлений безопасности
Java SE 7, обновление 426 апреля 2012 г.Нет обновлений безопасности; HotSpot VM 23; Поддержка JDK для Mac OS X
Java SE 7, обновление 52012-06-1214 исправлений безопасности
Java SE 7, обновление 62012-08-14JavaFX и Java Access Bridge включена установка Java SE JDK и JRE, поддержка JavaFX для сенсорных мониторов и сенсорных панелей, поддержка JavaFX для Linux, JDK и JRE Поддержка для Mac OS X, JDK для Linux на ARM
Java SE 7, обновление 730.08.20124 исправления безопасности
Java SE 7, обновление 916.10.201230 исправлений уязвимостей системы безопасности
Java SE 7, обновление 102012-12-11Новые функции безопасности, такие как возможность отключения запуска любого приложения Java в браузере и новые диалоговые окна, чтобы предупредить вас, когда JREезна, и исправления ошибок
Java SE 7 Update 1113.01.2013Olson Data 2012i; исправление проблем с регистрацией плагина в системе с установленной автономной версией JavaFX, исправления безопасности для CVE -2013-0422 ; уровень безопасности по умолчанию для Java-апплетов и веб-приложений был увеличен с «Среднего» до «Высокого»
Java SE 7, обновление 1301.02.201350 исправлений безопасности
Java SE 7, обновление 1519.02.20135 исправлений безопасности
Java SE 7, обновление 1704.03.20132 исправления безопасности
Java SE 7, обновление 2116.04.2013Множественные изменения, включая 42 исправления безопасности, новый сервер JRE, который не включает подключаемый модуль- in и JDK для Linux на ARM
Java SE 7, обновление 2518.06.2013Несколько изменений, включая 40 исправлений безопасности
Java SE 7 Update 4010.09.2013621 исправление ошибок, новые функции безопасности, hardfloat ARM, Java Mission Control 5.2 и Retina Display поддержка
Java SE 7 Update 4515.10.201351 исправление безопасности; защита от несанкционированного распространения Java-приложений; восстановить подсказки безопасности; Изменения JAXP; TimeZone.setИзменение по умолчанию
Java SE 7 Update 512014-01-1436 исправлений безопасности; блокировать апплеты JAVA без манифеста (например, удаленная консоль - Java-апплет - карта IBM IMM, карта HP iLO), если даже диалоговое окно с предупреждением содержит предложение «будет заблокировано в следующей версии», 17 исправлений ошибок
Обновление Java SE 7 5515.04.201437 исправлений безопасности, 19 исправлений ошибок
Java SE 7 (обновление 60)28 мая 2014 г.Java Mission Control 5.3, 130 исправлений ошибок
Обновление Java SE 7 6515.07.201418 исправлений ошибок
Обновление Java SE 7 672014-08 -041 исправление ошибок
Java SE 7, обновление 712014-10-1416 исправлений ошибок
Java SE 7, обновление 722014-10-14Дата выпуска с обновлением 71, что и уместно обновления набора исправлений (PSU) для Java SE 7, исправлено 36 ошибок
Обновление Java SE 7 7520.01.201512 исправлений ошибок, SSLv3 отключен по умолчанию
Java SE 7 Update 762015-01-20Та же дата выпуска с обновлением 75 в качестве соответствующего обновления исправлений (PSU) для Java SE 7, исправления ошибок 97
Обновление Java SE 7 792015-04-1421 исправление безопасности es, 6 исправлений ошибок,
Java SE 7 Update 802015-04-14Последний публичный выпуск Java 7; та же дата выпуска с обновлением 79, что и соответствующее обновление набора исправлений (PSU) для Java SE 7, исправление ошибок 104
Обновление 85 Java SE 72015-07-15Недоступно общедоступно, доступно только в рамках программы поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 25 исправлений безопасности
Обновление Java SE 7 912015-10-20Общедоступно, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 20 исправлений безопасности
Обновление Java SE 7 952016-01-19Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 8 исправлений безопасности
Обновление Java SE 7 9705.02.2016Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности
Java SE 7 (обновление 99)23 марта 2016 г.Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 1 исправление безопасности
Обновление Java SE 7 10118.04.2016Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 22 исправления безопасности
Обновление Java SE 7 11119.07.2016Недоступно для всех, доступно только через программу поддержки Java SE и в рекомендованном кластере набора исправлений Solaris 10; 36 исправлений безопасности
Обновление Java SE 7 12118.10.2016Недоступно общедоступно, доступно только через программу Java SE и в рекомендованном кластере набора исправлений Solaris 10; 32 исправления безопасности
Обновление Java SE 7 13117.01.2017Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 34 исправления безопасности
Обновление Java SE 7 14118 апреля 2017 г.Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 8 исправлений безопасности
Обновление Java SE 7 15118.07.2017Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 4 исправления безопасности
Обновление Java SE 7 16120.10.2017Недоступно общедоступно, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 4 исправления безопасности
Обновление Java SE 7 17116.01.2018Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 51 исправление безопасности
Обновление Java SE 7 18117.04.2018Недоступно общедоступно, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 12 исправлений безопасности
Обновление Java SE 7 19117.07.2018Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 9 исправлений безопасности
Обновление Java SE 7 20118.10.2018Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 13 исправлений безопасности
Обновление Java SE 7 2112019-01-15Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности
Java SE 7 Update 2212019-04-16Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 5 исправлений безопасности
Обновление Java SE 7 23116.07.2019Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 6 исправлений безопасности
Обновление Java SE 7 2412019-10-15Недоступно для всех, доступно только через программу поддержки Java SE и в кластере рекомендованных наборов исправлений Solaris 10; 15 исправлений безопасности

Java SE 8

Java 8 была выпущена 18 марта 2014 г. и включаются некоторые функции, которые были запланированы для Java 7, но позже отложены.

Работа над функциями была организована с точки зрения предложения по расширению JDK (JEP).

  • JSR 335, JEP 126: поддержка на уровне языка лямбда-выражений (официально, лямбда -выражения; неофициально, замыкания ) в Project Lambda и методы по умолчанию (виртуальные методы расширения ), которые позволяют добавлять методы к интерфейсу без нарушения реализаций. В сообществе Java продолжались дебаты о том, следует ли поддержку лямбда-выражений. Позже Sun объявила, что лямбда-выражения будут включены в Java, и попросила внести вклад в улучшение этой функции. Поддержка лямбда-выражений также позволяет выполнять в стиле в функциональном стиле с потоками элементов, такие как преобразования в коллекциях, вдохновленные MapReduce. Методы по умолчанию позволяют автору API новые методы в интерфейс, не нарушая старый код, используя его. Хотя это не было их основной целью, по умолчанию также допускает множественное наследование поведения (но не состояния).
  • JSR 223, JEP 174: Project Nashorn, среда выполнения JavaScript, которая позволяет разработчикам встраивать код JavaScript в приложениях
  • JSR 308, JEP 104: Аннотация к типам Java
  • Целочисленная арифметика без знака
  • JSR 337, JEP 120: Повторяющиеся аннотации
  • JSR 310, JEP 150: API даты и времени
  • JEP 178: Статически связанные библиотеки JNI
  • JEP 153: запуск приложений JavaFX (запуск JAR-файлов приложений JavaFX)
  • JEP 122: Удалить постоянное поколение

Java 8 не поддерживается в Windows XP, но после обновления 25 JDK 8 его можно установить и запустить под Windows XP. Предыдущие обновления JDK 8 можно было установить после принудительного установки файла непосредственного распаковывания файла установки.

С октября 2014 года Java 8 была версией по умолчанию для загрузки (а затем снова загрузки, заменяющей Java 9) с официального сайта. «Oracle будет использовать общедоступные обновления и автоматические обновления Java SE 8, по крайней мере, до конца декабря 2020 года для личных пользователей и января 2019 года для коммерческих пользователей».

Обновления Java 8

Таблица обновлений Java 8
ВыпускДата выпускаОсновные моменты
Java SE 818 марта 2014 г.Первоначальный выпуск
Java SE 8, обновление 52014-04-15Использование «*» в атрибуте Caller -Allowable-Codebase; 11 исправлений ошибок
Java SE 8 Update 112014-07-15Инструмент анализа зависимостей Java (jdeps); Возможность отключения спонсоров в панели управления Java; Атрибут файла JAR - точка входа; Свойство ограничения обработки JAXP - maxElementDepth; 18 исправлений ошибок безопасности, 15 исправлений ошибок
Java SE 8 Update 202014-08-19669 исправлений ошибок, JMC 5.4, дедупликация строк (по умолчанию отключена)
Java SE 8, обновление 252014-10-1410 исправлений ошибок
Java SE 8, обновление 312015-01-1926 исправлений ошибок; SSLv3 (по умолчанию отключен)
Java SE 8 (обновление 40)03.03.2015645 исправлений ошибок. Добавлено понятие «нехватка памяти», чтобы помочь указать, сколько системных память все еще доступна (низкое давление = большой объем памяти, высокое давление = мало памяти)
Java SE 8, обновление 452015-04-1413 исправлений ошибок
Java SE 8 Обновление 512015-07-14Добавлена ​​поддержка собственной песочницы на платформах Windows (по умолчанию отключена); также 25 исправлений безопасности, 14 исправлений ошибок
Обновление Java SE 8 6018.08.2015480 исправлений ошибок
Обновление Java SE 8 6520.10.201525 исправлений безопасности, 3 исправления ошибок
Обновление Java SE 8 6616.11.201515 исправлений ошибок
Java SE 8, обновление 712016-01-198 исправлений безопасности, 5 исправлений ошибок
Java SE 8 Update 7219.01.20168 исправлений безопасности, 5 исправлений ошибок, несколько улучшений
Java SE 8, обновление 7303.02.20161 исправление безопасности
Java SE 8, обновление 7403.02.20161 исправление безопасности
Обновление Java SE 8 7723 марта 2016 г.1 исправление безопасности
Java SE 8, обновление 912016-04-199 исправлений безопасности, 4 исправления ошибок и улучшения
Java SE 8 Update 922016-04- 19Безопасность и исправления ошибок из 8u91, а также 76 дополнительных исправлений ошибок; введены флаги ExitOnOutOfMemoryErrorи CrashOnOutOfMemoryError
Java SE 8 Update 10119.07.2016Безопасность и исправления ошибок от 8u92, плюс 9 дополнительных исправлений ошибок
Java SE 8 Update 1022016-07-19Безопасность и исправления ошибок из 8u101, плюс 118 дополнительных исправлений ошибок
Java SE 8 Обновление 11118.10.20167 исправлений безопасности и 9 исправлений ошибок
Java SE 8 Обновление 11218.10.2016Дополнительные функции и 139 исправлений ошибок по сравнению с 8u111
Java SE 8 Update 12117.01.20173 дополнительных функции, 5 изменений и 11 исправлений ошибок по сравнению с 8u112.
Обновление Java SE 8 13118 апреля 2017 г.4 изменения и 42 исправления ошибок (2 заметных).
Обновление Java SE 8 14118.07.2017Дополнительная функция, 3 изменения и 12 исправлений ошибок.
Java SE 8 (обновление 144)26.07.201732 Исправления безопасности и исправления ошибок из 8u141.
Java SE 8, обновление 15117.10.201722 исправления безопасности, 2 примечания, 1 отзыв сертификата, 1 новая функция, 6 изменений и 24 исправления ошибок из версии 8u144.
Обновление Java SE 8 15217.10.2017Исправления безопасности, 1 новая функция, 1 изменение и 238 исправлений ошибок из 8u151 (1 заметная).
Обновление Java SE 8 16116.01.201821 исправление безопасности, 3 новые функции, 9 изменений и 1 исправление ошибки из 8u152.
Обновление Java SE 8 16216.01.2018Исправления безопасности, исправления 63 ошибок.
Java SE 8 (обновление 171)17.04.2018Исправления безопасности, исправления ошибок.
Java SE 8 (обновление 172)17.04.2018Исправления безопасности, исправления ошибок.
Java SE 8 (обновление 181)17.07.2018Исправления безопасности, исправления ошибок.
Java SE 8 (обновление 191)16.10.2018Новые функции, изменения, исправления ошибок, исправления безопасности.
Обновление Java SE 8 19216.10.2018Новые функции, изменения, исправления ошибок.
Java SE 8 Update 20115.01.2019Новые функции, изменения, исправления ошибок.
Java SE 8 (обновление 202)15.01.2019Новые функции, изменения, исправления ошибок.
Java SE 8 (обновление 211)16.04.2019Новые функции, изменения, исправления ошибок. Обновление лицензии .
Обновление Java SE 8 2122019-04-16Новые функции (например, 5 символов валюты, в том числе для Биткойн и «Новый Название японской эпохи Рейва "), изменения, исправления ошибок. Обновление лицензии .
Обновление Java SE 8 22116.07.2019Новые функции, изменения, исправления ошибок.
Обновление Java SE 8 23115.10.2019Новые функции, изменения, исправления ошибок и 18 исправлений безопасности.
Java SE 8, обновление 24114.01.2020Новые функции, изменения, исправления ошибок.
Обновление Java SE 8 25114.04.2020Новые функции, изменения, исправления ошибок.
Обновление Java SE 8 26114.07.2020Новые функции, изменения, исправления ошибок.

Java SE 9

Java SE 9 была выпущена 21 сентября 2017 года из-за неоднозначного принятия текущей реализации Project Jigsaw Исполнительным комитетом Java, что привело к тому, ч то Oracle исправила некоторые нерешенные проблемы и проблемы., и уточнить некоторые важные технические вопросы. В последние дни июня 2017 года Java Community Process выразила почти единодушное согласие относительно предложенной схемы модульной системы.

  • JSR 376: Модуляризация JDK в рамках Project Jigsaw (Java Platform Module System )
  • JEP 222: JShell : оболочка Java (Java REPL )
  • JEP 295: Компиляция с опережением времени
  • JEP 268: XML-каталоги
  • JEP 266: Подробнее обновления параллелизма. Он включает реализацию Java Reactive Streams, включая новый класс Flow, который включает интерфейсы, ранее предоставляемые Reactive Streams
  • JEP 193: Переменные обрабатывают: определить стандартные средства для вызова эквивалентов различных операций java.util.concurrent.atomicи sun.misc.Unsafe
  • JEP 282: jlink: Java Linker : создать инструмент, который может собирать и оптимизировать набор модулей и их зависимостей в настраиваемый образ времени выполнения. Он эффективно позволяет создавать полностью пригодный для использования исполняемый файл, включая JVM для его запуска
  • JavaDB был удалено из JDK
  • JEP 263: HiDPI графика: авт оматическое масштабирование и изменение размера
  • JEP 254: Compact Strings
  • JEP 213: Milling Project Coin
    • Разрешить @SafeVarargs в методах частного экземпляра
    • Разрешить эффективно-конечные переменные, которые будут использоваться в качестве ресурсов в операторе try-with-resources
    • Разрешить ромб с анонимными классами, если тип аргумента предполагаемого типа является обозначаемым
    • Завершите удаление, начатое в Java SE 8, подчеркивания из набора имен законных идентификаторов
    • Поддержка частных методов в интерфейсах

Первая Java 9 кандидат на выпуск был выпущен 9 августа 2017 года. Первый стабильный выпуск Java 9 был выпущен 21 сентября 2017 года.

История

На JavaOne 2011 Oracle обсуждала функции они надеялись выпустить для Java 9 в 2016 году. Java 9 должна включать лучшую поддержку многогигабайтных куч, лучшую интеграцию с собственным кодом, другой сборщик мусора по умолчанию (G1 для «более короткого времени ответа ") и самонастраивающаяся JVM. В начале 2016 года выпуск Java 9 был перенесен на март 2017 года, а позже снова отложен еще на четыре месяца до июля 2017 года.

Обновления Java 9

ВыпускДата выпускаОсобенности
Java SE 921.09.2017Первоначальный выпуск
Java SE 9.0.117.10.2017Исправления безопасности и критические ошибки, октябрь 2017 г.
Java SE 9.0.416.01.2018Финальный выпуск для JDK 9; Исправления безопасности и критические ошибки, январь 2018 г.

Java SE 10

OpenJDK 10 был выпущен 20 марта 2018 г. с подтвержденными двенадцатью новыми функциями. Среди этих функций были:

Обновления Java 10

ВыпускДата выпускаОсобенности
Java SE 1020.03.2018Первоначальный выпуск
Java SE 10.0.117.04.2018Исправления безопасности, 5 исправлений ошибок
Java SE 10.0.22018-07-17Финальный выпуск для JDK 10. Исправления безопасности, исправления 7 ошибок

Java SE 11

JDK 11 был выпущен 25 сентября 2018 г., и в настоящее время эта ве рсия работает. en для исправления ошибок. Он предлагает LTS или долгосрочную поддержку. Среди прочего, Java 11 включает ряд новых функций, таких как:

Некоторые функции из предыдущих выпусков были удалены; в частности, Java-апплеты и Java Web Start больше не доступны. Модули JavaFX, Java EE и CORBA были удалены из JDK

Обновления Java 11

ReleaseRelease датаОсновные моменты
Java SE 1125.09.2018Первый выпуск
Java SE 11.0.110.10.2018 -16Безопасность и исправления ошибок
Java SE 11.0.22019-01-15Безопасность и исправления ошибок
Java SE 11.0.316.04.2019Новые функции, безопасность и исправления ошибок
Java SE 11.0.416.07.2019Новые функции, Безопасность и исправления ошибок; HotSpot Windows OS Detection правильно определяет Windows Server 2019
Java SE 11.0.52019-10-15Новые функции, безопасность и исправления ошибок
Java SE 11.0.62020-01-14Новые функции, безопасность и исправления ошибок
Java SE 11.0.72020-04-14Новые функции, Безопасность и исправления ошибок
Java SE 11.0.82020-07-14Новые функции, безопасность и исправления ошибок

Java SE 12

JDK 12 был выпущен 19 марта 2019 года. Среди прочего, Java 12 включает ряд новых функций, таких как:

Обновления Java 12

ВыпускДата выпускаОсновные моменты
Java SE 122019-03-19Первоначальный выпуск
Java SE 12.0.116.04.2019Новые исправления безопасности и имени японской эры
Java SE 12.0.22019-07-16Удаленные функции и параметры

Java SE 13

JDK 13 был выпущен 17 сентября 2019 года. Java 13 включает следующие новые функции, а также «сотни небольших улучшений и тысячи исправлений ошибок».

Обновления Java 13

ВыпускДата выпускаОсновные моменты
Окончательный выпуск Кандидат2019-08-09Сборки с ранним доступом: сборка 33
Java SE 1317.09.2019общедоступная Выпуск
Java SE 13.0.115.10.2019Безопасность и исправления ошибок
Java SE 13.0.214.01.2020Безопасность и исправления ошибок

Java SE 14

JDK 14 был выпущен 17 марта 2020 г. J ava 14 включает следующие новые функции, а также «сотни небольших улучшений и тысячи исправлений ошибок».

Обновления Java 14

ВыпускДата выпускаОсновные моменты
Java SE 142020-03-17общедоступный выпуск
Java S E 14.0.12020-04-14Безопасность и исправления ошибок
Java SE 14.0.22020-07-14Безопасность и исправления ошибок

Java SE 15

JDK 15 был выпущен 15 сентября 2020 г. Java 15 добавляет, например, поддержка многострочных строковых литералов (также известных как текстовые блоки). Сборщики мусора Sh enandoah и Z (последние иногда сокращенно ZGC) теперь готовы к использованию в производственной среде (т.е. больше не помечены как экспериментальные). Поддержка операционной системы Oracle Solaris (и процессоров SPARC) прекращена (хотя она все еще доступна, например, в Java 11). Движок Nashorn JavaScript удален. Также удалены некоторые корневые сертификаты CA.

Обновления Java 15

ВыпускДата выпускаОсновные моменты
Последняя сборка11 августа 2020 г.Кандидат на выпуск: сборка 36
Java SE 152020-09-15Общедоступный выпуск
Java SE 15.0.12020-10-20Безопасность и исправления ошибок

Java SE 16

JDK 16 - это текущий выпуск, который сейчас находится в стадии активной разработки и должен выйти в марте 2021 года, если текущие 6-месячные циклы выпуска продолжатся. Сама реализация Java была и до сих пор пишется на C ++, тогда как с Java 16, более поздней версии C ++ 14 (но все еще не, например, C ++ 17 ) разрешено. Код также перемещен в GitHub (отбрасывая систему управления исходным кодом Mercurial ).

Обновления Java 16

ВыпускДата выпускаОсновные моменты
Последняя сборка26.03.2021 TBCСборки в раннем доступе: сборка 21

Возможные будущие функции

  • Типы значений, объекты без личности, но с эффективным макетом памяти.
  • 64-битные адресные массивы для поддержки больших наборов данных.
  • Сопоставление с образцом, механизм для тестирования и деконструкции значений. Эта функция может быть добавлена ​​к выражению-переключателю и экземпляру-выражения.
  • Запечатанные типы, механизм для объявления всех подклассов класса. Вместе с функциями сопоставления записей и шаблонов это используется для реализации алгебраических типов данных.
  • Улучшенная совместимость с машинным кодом, позволяющая исходному коду Java вызывать функции и использовать типы данных из других языков более простым способом. и имеет лучшую производительность, чем сегодня.
  • Виртуальные потоки, облегченная запланированная альтернатива в пользовательском режиме стандартным управляемым потокам ОС. Виртуальные потоки сопоставляются с потоками ОС во взаимосвязи «многие ко многим», в отличие от отношения «многие к одному» из исходной реализации зеленых потоков в ранних версиях Java..

Реализации

Официально поддерживаемые Платформа Java, сначала разработанная в Sun, а теперь управляемая Oracle, - это Java SE. Релизы основаны на проекте OpenJDK, который является бесплатным проектом с открытым исходным кодом с открытой моделью разработки. Однако существуют и другие реализации Java - отчасти из-за ранней истории Java как проприетарного программного обеспечения, в то время как некоторые реализации были созданы, чтобы предложить некоторые преимущества по сравнению со стандартной реализацией, часто в результате какой-либо области академической или корпоративной исследование. Многие дистрибутивы GNU / Linux включают сборки OpenJDK через проект IcedTea, начатый Red Hat, который обеспечивает более простую сборку и среда интеграции.

Visual J ++ и виртуальная машина Microsoft Java были созданы как несовместимые реализации. После иска Sun против Microsoft Microsoft отказалась от него и начала работу над платформой .NET.

Доступны другие проприетарные реализации Java, такие как Zing Azul ; Кроме того, Azul предлагает сертифицированные сборки OpenJDK с открытым исходным кодом под псевдонимом Zulu.

До выпуска OpenJDK, в то время как реализация Sun все еще была частной, был создан проект GNU Classpath для предоставления бесплатной реализации платформы Java с открытым исходным кодом. После выпуска JDK 7, когда OpenJDK стал официальной эталонной реализацией, первоначальная мотивация для проекта GNU Classpath почти полностью исчезла, и его последний выпуск был в 2012 году.

Проект Apache Harmony был запущен незадолго до выпуска OpenJDK. После первоначального выпуска исходного кода Sun проект Harmony продолжился, работая над реализацией в рамках разрешающей лицензии , в отличие от лицензии с авторским левом, выбранной для OpenJDK. Позже Google разработал Android и выпустил его под разрешающей лицензией. Android включил в себя части проекта Harmony, дополненный собственной виртуальной машиной Dalvik и ART от Google. С тех пор Apache Harmony был закрыт, и Google переключил использование компонентов Harmony на эквивалентные из OpenJDK.

И Jikes, и Jikes RVM - это исследовательские проекты с открытым исходным кодом, разработанные IBM.

Существуют несколько других реализаций, которые начинались как проприетарное программное обеспечение, но являются теперь с открытым исходным кодом. IBM изначально разработала OpenJ9 как проприетарный J9, но с тех пор перелицензировала проект и пожертвовала его Eclipse Foundation. JRockit - это проприетарная реализация, приобретенная Oracle и включенная в последующие версии OpenJDK.

Ссылки

Внешние ссылки

Последняя правка сделана 2021-05-24 03:58:09
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте