Java.com

Загрузить Справка

Версия для печати

Ключевые моменты версии Java 8


Этот раздел касается:
  • Версии Java: 8.0

На этой странице основное внимание уделяется изменениям, влияющим на работу конечных пользователей, для версий Java 8. Дополнительные сведения об изменениях доступны в примечаниях к версии (к каждой соответствующей версии).
» Даты выпуска Java


Java 8 (обновление 60) (8u60)

Ключевые моменты версии
  • Данные IANA версии 2015e
    JDK 8u60 содержит версию 2015e данных часовых поясов IANA. Дополнительную информацию см. в разделе Версии данных часовых поясов в программном обеспечении JRE.
  • Устранение ошибки: Параметр dns_lookup_realm должен иметь значение false по умолчанию
    Параметр dns_lookup_realm в файле Kerberos' krb5.conf по умолчанию имеет значение false. См. 8080637.
  • Устранение ошибки: Отключение шифровальных наборов RC4
    Шифровальные наборы TLS на основе RC4 (например, TLS_RSA_WITH_RC4_128_SHA) теперь считаются скомпрометированными и не должны использоваться (см. RFC 7465). Таким образом, шифровальные наборы TLS на основе RC4 были отключены по умолчанию в реализации Oracle JSSE путем добавления "RC4" в свойство безопасности "jdk.tls.disabledAlgorithms" и удаления их из списка включенных по умолчанию шифровальных наборов. Эти наборы шифрования можно снова активировать, удалив "RC4" из свойства безопасности "jdk.tls.disabledAlgorithms" в файле java.security или с помощью динамического вызова метода Security.setProperty(), а также повторного добавления их в список включенных шифровальных наборов с помощью методов SSLSocket/SSLEngine.setEnabledCipherSuites(). Также можно воспользоваться параметром командной строки -Djava.security.properties, чтобы переопределить свойство безопасности jdk.tls.disabledAlgorithms. Например:
    java -Djava.security.properties=my.java.security ...
    , где my.java.security — это файл, содержащий свойство без RC4:
    jdk.tls.disabledAlgorithms=SSLv3
    Даже с этим параметром, заданным в командной строке, требуется повторно добавить наборы шифров на основе RC4 в список включенных наборов шифров с помощью методов SSLSocket/SSLEngine.setEnabledCipherSuites(). См. 8076221.
  • Устранение ошибки: Обнаружение типа поддерживаемого хранилища ключей для хранилищ JKS и PKCS12
    Режим совместимости хранилищ ключей. Для обеспечения взаимодействия тип хранилища ключей Java JKS теперь поддерживает режим совместимости хранилища ключей по умолчанию. Данный режим позволяет хранилищам ключей JKS получать доступ к форматам файлов JKS и PKCS12. Чтобы отключить режим совместимости хранилища ключей, установите для свойства безопасности keystore.type.compat значение false. См. 8062552.
  • Устранение ошибки: Исключены небезопасные способы мониторинга в выпуске JDK 8u
    Методы monitorEnter, monitorExit и tryMonitorEnter в файле sun.misc.Unsafe JDK 8u60 помечены как устаревшие и будут удалены в следующем выпуске. Данные методы не используются в JDK и редко используются за пределами JDK. См. 8069302.
  • Устранение ошибки: Извлечение записи JFR из файла ядра с помощью SA
    DumpJFR является инструментом на основе SA-агента, который можно использовать для извлечения данных Java Flight Recorder(JFR) из файлов ядра и активных процессов Hotspot. DumpJFR можно использовать в одном из следующих методов:
    • Присоединение DumpJFR к активному процессу:

      java -cp $JAVA_HOME/lib/sa-jdi.jar sun.jvm.hotspot.tools.DumpJFR <pid>

    • Присоединение DumpJFR к файлу ядра:

      java -cp $JAVA_HOME/lib/sa-jdi.jar sun.jvm.hotspot.tools.DumpJFR <java> <core>

    Инструмент DumpJFR создает дамп данных JFR в файле с именем recording.jfr текущей рабочей папки. См. 8065301 (не общедоступно).
  • Устранение ошибки: Локальные переменные с именем 'enum' приводят к ложным сбоям в работе компилятора
    Синтаксический анализатор javac некорректно выполняет синтаксический анализ локальных переменных с именем 'enum', что приводит к ложным сбоям в работе, если программа, содержащая такие локальные переменные, компилируется с флагом 'source', соответствующим выпуску, в котором конструкция 'enum' недоступна (например, '-source 1.4'). См. 8069181.
Комплект Java Development Kit для ARM, выпуск 8u60

Этот выпуск включает Java Development Kit for ARM, выпуск 8u60 (JDK 8u60 for ARM). Сведения о поддержке устройств ARM см. на странице Загружаемые ресурсы JDK for ARM. Системные требования, инструкции по установке и советы по поиску и устранению неполадок см. на странице Инструкции по установке.

Ограничение: Поддержка функции Native Memory Tracking в JDK for ARM ограничена. Параметр командной строки java XX:NativeMemoryTracking=detail не поддерживается для целевых объектов ARM (отображается сообщение об ошибке). Вместо этого используйте следующий параметр:
XX:NativeMemoryTracking=summary

Обновления документации в связи с улучшениями Nashorn
JDK 8u60 содержит новые улучшения для Nashorn. Информацию о следующих изменениях следует читать в сочетании с текущей документацией Nashorn.
  • Дополнение. В предыдущем разделе мы упоминали, что каждый объект JavaScript, представленный API-интерфейсам Java, реализует интерфейс java.util.Map. Это правило справедливо даже для массивов JavaScript. Однако данное поведение зачастую нежелательно или неожидаемо, если код Java планирует получить объекты после синтаксического анализа JSON. Библиотеки Java, которые работают с объектами после синтаксического анализа JSON, обычно ожидают использования массивами интерфейса java.util.List. Если необходимо представить объекты JavaScript, чтобы массивы были представлены в виде списков, а не карт, воспользуйтесь функцией Java.asJSONCompatible(obj), где obj является корнем дерева объектов JSON.
  • Исправление. Упомянутое предупреждение, размещенное в конце раздела Отображение типов данных, более не применимо. Nashorn обеспечивает преобразование внутренних строк JavaScript в java.lang.String в случае внешнего представления.
  • Исправление. Заявление в разделе Отображение типов данных, в котором сообщается, что "Например, массивы должны быть преобразованы явным образом,..." не является верным. Массивы автоматически преобразуются в типы массива Java, такие как java.util.List, java.util.Collection, java.util.Queue и java.util.Deque и т. д.
Изменения в наборе правил развертывания, версия 1.2
В JDK 8u60 реализован набор правил развертывания (DRS) 1.2, который содержит следующие изменения:
  • Добавьте элемент "checksum" как вспомогательный элемент "id", который может позволить определить неназначенные архивы jar с помощью контрольной суммы SHA-256 несжатой формы jar-файла:
    • Элемент "checksum" будет сопоставлять только неназначенные архивы jar, а указанный хэш будет сравниваться только относительно несжатой формы jar-файла.
    • Элемент "checksum" (идентичен элементу "certificate") имеет два аргумента "hash" и "algorithm", но в отличие от элемента "certificate" единственным поддерживаемым значением для "algorithm" является "SHA-256". Любые другие представленные значения будут пропускаться.
  • Разрешает применить элемент "message" ко всем типам правил, хотя ранее он применялся только к правилу блокировки:
    • В правиле запуска вспомогательный элемент сообщения будет вызывать отображение диалогового окна сообщения, в котором при отсутствии правила запуска в качестве поведения по умолчанию будет задано отображение сертификата или неподписанного диалогового окна. Сообщение будет отображаться в диалоговом окне сообщений.
    • В правиле по умолчанию сообщение будет отображаться только в случае, если в качестве действия по умолчанию задана блокировка. В данном случае сообщение будет отображаться в диалоговом окне блокировки.
  • Эхо "customer" блокируется в консоли Java, файлах трассировки и записях Java Usage Tracker.
    • До версии DRS 1.2 элементы "customer" могли быть включены (вместе с любыми вспомогательными элементами) в файл ruleset.xml. Данный элемент и все его вспомогательные элементы игнорируются. В DRS 1.2 по-прежнему выполняется функциональный пропуск элементов. Однако:
      • При синтаксическом анализе файла ruleset.xml все блоки "customer" будут использованы в эхо для консоли Java и файле трассировки развертывания (если консоль и трассировка включены).
      • При использовании правила все записи "customer" включены в то правило, которое будет добавлено в запись Java Usage Tracker (JUT) (при условии включения JUT).
В результате указанных выше изменений DTD для DRS 1.2 имеет следующую форму:
<!ELEMENT ruleset (rule*)>
<!ATTRIBUTE ruleset href CDATA #IMPLIED>
<!ATTRIBUTE ruleset version CDATA #REQUIRED>

<!ELEMENT rule (id, action)>

<!ELEMENT id (certificate?) (checksum?) >
<!ATTRIBUTE id title CDATA #IMPLIED>
<!ATTRIBUTE id location CDATA #IMPLIED>

<!ELEMENT certificate EMPTY>
<!ATTLIST certificate algorithm CDATA #IMPLIED>
<!ATTLIST certificate hash CDATA #REQUIRED>

<!ELEMENT checksum EMPTY>
<!ATTLIST checksum algorithm CDATA #IMPLIED>
<!ATTLIST checksum hash CDATA #REQUIRED>
 
<!ELEMENT action (message?)>
<!ATTRIBUTE permission (run | block | default) #REQUIRED>
<!ATTRIBUTE version CDATA #IMPLIED>
<!ATTRIBUTE force (true|false) "false">

<!ELEMENT message (#PCDATA)>
<!ATTLIST message locale CDATA #IMPLIED>

Дата окончания срока действия Java

Срок действия версии 8u60: 20 октября 2015 г. Срок действия Java истекает при появлении новой версии с исправлениями уязвимостей системы безопасности. Для систем, которым невозможно подключиться к серверам Oracle, истечение срока действия JRE (версия 8u60) 20 ноября 2015 года обеспечивается вспомогательным механизмом. При выполнении любого из условий (становится доступной новая версия или истекает срок действия) Java предоставляет пользователям дополнительные предупреждения и напоминания о необходимости обновления до более новой версии.

Устранение ошибок предыдущих версий

Список ошибок предыдущих версий, исправленных в этом выпуске, см. на странице Устранение ошибок версии JDK 8u60.

» Примечание к версии 8u60


Java 8 (обновление 51) (8u51)

Ключевые моменты версии
  • Данные IANA версии 2015d
    JDK 8u51 содержит версию 2015d данных часовых поясов IANA. Дополнительную информацию см. в разделе Версии данных часовых поясов в программном обеспечении JRE.
  • Исправление ошибки: добавление новых корневых элементов Comodo в корневые ЦС
    Четыре новых корневых сертификата добавлены для Commodo:
    1. COMODO ECC Certification Authority
      alias: comodoeccca
      DN: CN=COMODO ECC Certification Authority, O=COMODO CA Limited, L=Salford, ST=Greater Manchester, C=GB
    2. COMODO RSA Certification Authority
      alias: comodorsaca
      DN: CN=COMODO RSA Certification Authority, O=COMODO CA Limited, L=Salford, ST=Greater Manchester, C=GB
    3. USERTrust ECC Certification Authority
      alias: usertrusteccca
      DN: CN=USERTrust ECC Certification Authority, O=The USERTRUST Network, L=Jersey City, ST=New Jersey, C=US
    4. USERTrust RSA Certification Authority
      alias: usertrustrsaca
      DN: CN=USERTrust RSA Certification Authority, O=The USERTRUST Network, L=Jersey City, ST=New Jersey, C=US
    См. JDK-8077997 (не общедоступно).
  • Исправление ошибки: добавление новых корневых элементов GlobalSign в корневые ЦС
    Два новых корневых сертификата добавлены для GlobalSign:
    1. GlobalSign ECC Root CA - R4
      alias: globalsigneccrootcar4
      DN: CN=GlobalSign, O=GlobalSign, OU=GlobalSign ECC Root CA - R4
    2. GlobalSign ECC Root CA - R5
      alias: globalsigneccrootcar5
      DN: CN=GlobalSign, O=GlobalSign, OU=GlobalSign ECC Root CA - R5
    См. JDK-8077995 (не общедоступно).
  • Исправление ошибки: добавление Actalis в корневые ЦС
    Добавлен новый корневой сертификат:
    Actalis Authentication Root CA
    alias: actalisauthenticationrootca
    DN: CN=Actalis Authentication Root CA, O=Actalis S.p.A./03358520967, L=Milan, C=IT

    См. JDK-8077903 (не общедоступно).
  • Исправление ошибки: добавление нового корневого элемента Entrust ECC
    Добавлен новый корневой сертификат:
    Entrust Root Certification Authority - EC1
    alias: entrustrootcaec1
    DN: CN=Entrust Root Certification Authority - EC1, OU="(c) 2012 Entrust, Inc. - for authorized use only", OU=See www.entrust.net/legal-terms, O="Entrust, Inc.", C=US

    См. JDK-8073286 (не общедоступно).
  • Исправление ошибки: удаление старых корневых элементов Valicert Class 1 и 2 Policy
    Удалено два корневых сертификата для 1024-разрядных ключей:
    1. ValiCert Class 1 Policy Validation Authority
      alias: secomvalicertclass1ca
      DN: EMAILADDRESS=info@valicert.com, CN=http://www.valicert.com/, OU=ValiCert Class 1 Policy Validation Authority, O="ValiCert, Inc.", L=ValiCert Validation Network
    2. ValiCert Class 2 Policy Validation Authority
      alias: valicertclass2ca
      DN: EMAILADDRESS=info@valicert.com, CN=http://www.valicert.com/, OU=ValiCert Class 2 Policy Validation Authority, O="ValiCert, Inc.", L=ValiCert Validation Network
    См. JDK-8077886 (не общедоступно).
  • Исправление ошибки: удаление старых корневых элементов Thawte
    Удалено два корневых сертификата для 1024-разрядных ключей:
    1. Thawte Server CA
      alias: thawteserverca
      DN: EMAILADDRESS=server-certs@thawte.com, CN=Thawte Server CA, OU=Certification Services Division, O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA
    2. Thawte Personal Freemail CA
      alias: thawtepersonalfreemailca
      DN: EMAILADDRESS=personal-freemail@thawte.com, CN=Thawte Personal Freemail CA, OU=Certification Services Division, O=Thawte Consulting, L=Cape Town, ST=Western Cape, C=ZA
    См. JDK-8074423 (не общедоступно).
  • Исправление ошибки: удаление более старых корневых элементов Verisign, Equifax и Thawte
    Удалено пять корневых сертификатов для 1024-разрядных ключей:
    1. Verisign Class 3 Public Primary Certification Authority - G2
      alias: verisignclass3g2ca DN: OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 3 Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US
    2. Thawte Premium Server CA
      alias: thawtepremiumserverca
      DN: EMAILADDRESS=premium-server@thawte.com, CN=Thawte Premium Server CA, OU=Certification Services Division, O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA
    3. Equifax Secure Certificate Authority
      alias: equifaxsecureca
      DN: OU=Equifax Secure Certificate Authority, O=Equifax, C=US
    4. Equifax Secure eBusiness CA-1
      alias: equifaxsecureebusinessca1
      DN: CN=Equifax Secure eBusiness CA-1, O=Equifax Secure Inc., C=US
    5. Equifax Secure Global eBusiness CA-1,
      alias: equifaxsecureglobalebusinessca1
      DN: CN=Equifax Secure Global eBusiness CA-1, O=Equifax Secure Inc., C=US
    См. JDK-8076202 (не общедоступно).
  • Исправление ошибки: удаление корневых элементов ЦС TrustCenter из сертификатов CACert
    Удалено три корневых сертификата:
    1. TC TrustCenter Universal CA I
      alias: trustcenteruniversalcai
      DN: CN=TC TrustCenter Universal CA I, OU=TC TrustCenter Universal CA, O=TC TrustCenter GmbH, C=DE
    2. TC TrustCenter Class 2 CA II
      alias: trustcenterclass2caii
      DN: CN=TC TrustCenter Class 2 CA II, OU=TC TrustCenter Class 2 CA, O=TC TrustCenter GmbH, C=DE
    3. TC TrustCenter Class 4 CA II
      alias: trustcenterclass4caii
      DN: CN=TC TrustCenter Class 4 CA II, OU=TC TrustCenter Class 4 CA, O=TC TrustCenter GmbH, C=DE
    См. JDK-8072958 (не общедоступно).
  • Исправление ошибки: шифр RC4 устарел для провайдера SunJSSE
    RC4 теперь считается слабым шифром. Серверы не должны выбирать RC4 при наличии более сильного кандидата в комплектах шифров, запрашиваемых клиентом. Новое свойство безопасности, jdk.tls.legacyAlgorithms, добавлено для определения устаревших алгоритмов в реализации Oracle JSSE. Связанные с RC4 алгоритмы добавлены в список устаревших алгоритмов. См. JDK-8074006 (не общедоступно).
  • Исправление ошибки: запрет комплектов шифров RC4
    RC4 теперь считается скомпрометированным шифром. Комплекты шифров RC4 были удалены из списка включенных по умолчанию комплектов шифров на клиенте и сервере в реализации Oracle JSSE. Эти комплекты шифров по-прежнему можно включить с помощью методов SSLEngine.setEnabledCipherSuites() и SSLSocket.setEnabledCipherSuites(). См. JDK-8077109 (не общедоступно).
  • Исправление ошибки: улучшенная проверка сертификации
    Благодаря этому исправлению идентификация конечных точек JSSE не выполняет обратный поиск имен для IP-адресов по умолчанию в JDK. Если приложение не требует обратного поиска имен для необработанных IP-адресов в соединениях SSL/TLS и при этом возникает проблема совместимости идентификации конечных точек, то для перехода к обратному поиску имен можно использовать свойство системы "jdk.tls.trustNameService". Обратите внимание, что если служба имен не является надежной, включение обратного поиска имен может привести к возникновению MITM-атак. См. JDK-8067695 (не общедоступно).
Дата окончания срока действия Java

Срок действия версии 8u51: 20 октября 2015 г. Срок действия Java истекает при появлении новой версии с исправлениями уязвимостей системы безопасности. Для систем, которые не могут подключиться к серверам Oracle, истечение срока действия JRE (версия 8u51) 20 ноября 2015 года обеспечивается вспомогательным механизмом. При выполнении любого из условий (становится доступной новая версия или истекает срок действия) Java предоставляет пользователям дополнительные предупреждения и напоминания о необходимости обновления до более новой версии.

Устранение ошибок предыдущих версий

Данный выпуск содержит исправления для устранения уязвимостей системы безопасности. Дополнительные сведения см. в информационном бюллетене о критическом обновлении Oracle Java SE.

Список ошибок предыдущих версий, исправленных в этом выпуске, см. на странице Устранение ошибок версии JDK 8u51.

» Примечание к версии 8u51


Java 8 (обновление 45) (8u45)

Ключевые моменты версии
  • Данные IANA версии 2015a
    JDK 8u45 содержит версию 2015a данных часовых поясов IANA. Дополнительную информацию см. в разделе Версии данных часовых поясов в программном обеспечении JRE.
  • Исправление ошибки: Требуется улучшить обработку файла jar. Начиная с версии JDK 8u45, при создании новых и/или распаковке существующих файлов .zip и .jar инструмент jar не позволяет добавлять символ наклонной черты "/" и символ ".." (точка-точка) в качестве компонентов пути к входному zip-файлу. При необходимости следует явно указывать в командной строке новый параметр "-P", позволяющий сохранить компонент точка-точка и/или абсолют пути. См. 8064601 (не общедоступно).
  • Исправление ошибки: В приложении jnlp со встроенным разделом "resource" возникает ошибка NPE при загрузке в jre8u40. Приложение jnlp с тегами , встроенными в тег или , может возвращать ошибку NPE. Эта ошибка исправлена. Тег следует использовать только при фактическом использовании тега . См. 8072631 (не общедоступно).
Дата окончания срока действия Java

Дата истечения срока действия для 8u45: 14 июля 2015 г. Срок действия Java истекает при появлении новой версии с исправлениями уязвимостей системы безопасности. Для систем, которым невозможно подключиться к серверам Oracle, истечение срока действия JRE (версия 8u45) 14 августа 2015 года обеспечивается вспомогательным механизмом. При выполнении любого из условий (становится доступной новая версия или истекает срок действия) Java предоставляет пользователям дополнительные предупреждения и напоминания о необходимости обновления до более новой версии.

Устранение ошибок предыдущих версий

Данный выпуск содержит исправления для устранения уязвимостей системы безопасности. Дополнительные сведения см. в информационном бюллетене о критическом обновлении Oracle Java SE.

Список ошибок предыдущих версий, исправленных в этом выпуске, см. на странице Устранение ошибок версии JDK 8u45.

» Примечание к версии 8u45


Java 8 (обновление 40) (8u40)

Ключевые моменты версии
  • Данные IANA версии 2014j
    JDK 8u40 содержит версию 2014j данных часовых поясов IANA. Дополнительную информацию см. в разделе Версии данных часовых поясов в программном обеспечении JRE.
  • Исправление: стандартные и статические методы интерфейсов в JDI, JDWP и JDB. Начиная с версии JDK 8 в интерфейсах можно использовать непосредственно исполняемые статические и стандартные методы. Эти методы не исполняются через JDWP или JDI, что затрудняет их отладку. Подробности см. в документе Руководство по совместимости JDK 8. См. 8042123.
  • Исправление ошибки: На панели управления теперь можно включить Java Access Bridge для 32-разрядных сред JRE. Ранее флажок Enable Java Access Bridge (Включить Java Access Bridge) удалялся из панели управления Java при удалении 64-разрядных JRE даже в тех случаях, когда 32-разрядные JRE по-прежнему оставались в системе. Начиная с выпуска JDK 8u40, флажок Enable Java Access Bridge (Включить Java Access Bridge) сохраняется в разделе Панель управления -> Специальные возможности -> Центр специальных возможностей -> Использовать компьютер без экрана при наличии 32-разрядных JRE. Таким образом, пользователь может включить Java Access Bridge с помощью панели управления. См. 8030124.
  • Исправление ошибки: Модернизация JavaFX Media Stack в Mac OS X. Мультимедийные возможности JavaFX расширены за счет добавления платформы проигрывателя на базе AVFoundation. Разрешено удаление старой платформы на базе QTKit для совместимости с Mac App Store. См. 8043697 (не общедоступно)
  • Исправление ошибки: Отсутствуют API DOM. В выпуске JDK 8u40 API DOM устаревшего подключаемого модуля были случайно удалены. Если апплет требует использования com.sun.java.browser.dom.DOMService для связи с браузером, пользователям может потребоваться обновить свой апплет для использования netscape.javascript.JSObject или продолжить использование JDK 8 (обновление 31). Эта проблема разрешена в сборке 26, новые программы установки 8u40 опубликованы. Если вы столкнулись с этой проблемой, загрузите и выполните обновленные программы установки JDK 8u40. См. 8074564.
  • Исправление ошибки: Mac 10.10: в приложении с экраном-заставкой наблюдаются проблемы установки фокуса. В приложениях, запускаемых через webstart, и автономных приложениях, в которых используется экран-заставка, не удается установить фокус с помощью клавиатуры. Временное решение: запустите javaws с использованием параметра -Xnosplash. Эта проблема разрешена в сборке 27, новая программа установки 8u40 опубликована. Если вы столкнулись с этой проблемой, загрузите и выполните обновленную программу установки JDK 8u40. См. 8074668.
  • Усовершенствования инструмента Java Packager
    Выпуск JDK 8u40 содержит следующие усовершенствования для Java Packager:
  • Устаревшие API-интерфейсы
    Механизм переопределения утвержденных стандартов и механизм расширения устарели и, возможно, будут удалены в следующем выпуске. Изменения среды выполнения отсутствуют. Рекомендуется отказаться от использования механизмов 'переопределение утвержденных стандартов' или 'расширение' в существующих приложениях. Чтобы выявить случаи использования этих механизмов, воспользуйтесь опцией командной строки -XX:+CheckEndorsedAndExtDirs. Если любое из следующих условий является истинным, выдается ошибка.
    • Системное свойство -Djava.endorsed.dirs или -Djava.ext.dirs настроено для изменения местоположения по умолчанию.
    • Существует каталог${java.home}/lib/endorsed.
    • ${java.home}/lib/ext содержит файлы JAR помимо тех, которые содержатся в JDK.
    • Один из каталогов системных расширений для конкретной платформы содержит файлы JAR.
    Опция командной строки -XX:+CheckEndorsedAndExtDirs поддерживается в JDK 8u40 и более поздних версиях.
  • Различия между страницами инструмента JJS
    Японская версия страницы справки JJS отличается от английской версии. Некоторые неподдерживаемые опции удалены из английской версии страницы инструмента JJS. Японская версия будет обновлена позже. См. 8062100 (не общедоступно). Другие изменения страниц инструмента JJS см. в разделе "Усовершенствования инструментов в JDK 8".
  • Изменение значений по умолчанию для G1HeapWastePercent и G1MixedGCLiveThresholdPercent
    Значение по умолчанию для G1HeapWastePercent изменено с 10 на 5. Это позволяет снизить необходимость использования полнофункциональных сборщиков мусора. По этой же причине значение по умолчанию для G1MixedGCLiveThresholdPercent изменено с 65 на 85.
  • Новый интерфейс фильтрации доступа к классам Java
    Интерфейс jdk.nashorn.api.scripting.ClassFilter позволяет ограничить доступ к определенным классам Java из сценариев, выполняемых в машине сценариев Nashorn. Подробнее см. в разделе"Ограничение доступа к определенным классам Java через сценарии" в руководстве пользователя Nashorn и статье 8043717 (не общедоступно).
  • Проблемы со сторонними поставщиками JCE
    В исправлении JDK-8023069 (в JDK 8u20) обновлены поставщики SunJSSE и SunJCE, включая некоторые внутренние интерфейсы. Некоторые сторонние поставщики JCE (например, RSA JSAFE) используют внутренние интерфейсы sun.* и поэтому не смогут работать с обновленным поставщиком SunJSSE. Эти поставщики необходимо обновить для работы с обновленным поставщиком SunJSSE. Если вы столкнулись с этой проблемой, свяжитесь со своим поставщиком JCE для обновления. См. 8058731.
  • Повторное включение шифрования Solaris Crypto Framework
    Если вы работаете в среде Solaris 10, изменение внесено для повторного включения операций с MD5, SHA1 и SHA2 через Solaris Crypto Framework. Если вы столкнулись с исключением CloneNotSupportedException или сообщением об ошибке PKCS11 CKR_SAVED_STATE_INVALID в JDK 8u40, вам необходимо проверить и применить следующие исправления или их новые версии:
    • 150531-02 в системах Sparc
    • 150636-01 в системах x86
  • Обновление руководства по устранению неисправностей для NMT
    NMT (Отслеживание собственной памяти) – функция виртуальной машины Java HotSpot, отслеживающая использование внутренней памяти HotSpot JVM. Функция NMT может использоваться для мониторинга распределения внутренней памяти и диагностики утечек памяти виртуальной машины. На страницу усовершенствований виртуальной машины добавлено описание функций NMT. См. раздел "Усовершенствования виртуальной машины Java в Java SE 8". В руководство по устранению неисправностей добавлена информация о функциях NMT. См. раздел "Отслеживание собственной памяти".
  • Удалена функция запуска нескольких JRE
    Задокументированная функция выбора версии JRE во время запуска и функция запуска нескольких JRE удалена в JDK 8u40. Приложения, развернутые с использованием этой функции, должны перейти на альтернативные решения развертывания, например Java WebStart.
  • Улучшения JavaFX
    Начиная с версии JDK 8u40 в улучшенных элементах управления JavaFX реализована поддержка вспомогательных технологий. Это означает, что элементы управления JavaFX теперь поддерживают специальные возможности. Кроме того, разработчикам предоставляется общедоступный API-интерфейс, позволяющий создавать собственные элементы управления с поддержкой специальных возможностей. Ниже перечислены специальные возможности, поддерживаемые на платформах Windows и Mac OS X:
    • Считывание элементов управления JavaFX программами для чтения с экрана
    • Функции элементов управления JavaFX дублируются клавиатурой
    • Предусмотрен специальный режим высокой контрастности, улучшающий видимость элементов управления для пользователей.
    См. 8043344 (не общедоступно).

    Версия JDK 8u40 включает в себя новые элементы пользовательского интерфейса JavaFX: вертикальный список с прокруткой, поддержка форматированного текста и стандартный набор диалоговых окон оповещения.
    • Вертикальный список с прокруткой: однострочное текстовое поле, позволяющее пользователю выбирать числа или значения объектов из упорядоченной последовательности. Подробное описание см. в классе javafx.scene.control.Spinner.
    • Форматированный текст: новый класс TextFormatter предоставляет возможность форматирования текста для подклассов TextInputControl (например, TextField и TextArea). Подробное описание см. в классе javafx.scene.control.TextFormatter.
    • Диалоговые окна: класс Dialog позволяет приложениям создавать собственные диалоговые окна. Дополнительно предоставляется класс Alert, расширяющий класс Dialog и обеспечивающий поддержку нескольких типов встроенных диалоговых окон, отображаемых в качестве запросов для пользователя. Подробное описание см. в классах javafx.scene.control.Dialog, javafx.scene.control.Alert, javafx.scene.control.TextInputDialog, javafx.scene.control.ChoiceDialog.
    См. 8043350 (не общедоступно).
Коммерческие функции
  • AppCDS (Совместное использование данных о классе приложения)
    AppCDS (Совместное использование данных о классе приложения) расширяет CDS, что позволяет распределять классы из каталогов стандартных расширений и из папки класса в общем архиве. Эта функция является коммерческой и больше не считается экспериментальной (в противоположность данным из документации инструментов Java). См. опцию -XX:+UseAppCDS на странице средства запуска Java.
  • Управление общей памятью
    Начиная с JDK 8u40, в JDK добавлено понятие "дефицит памяти". Дефицит памяти – это свойство, отражающее общее использование памяти (ОЗУ) в системе. Чем выше значение свойства "дефицит памяти", тем быстрее система может столкнуться с нехваткой памяти. При увеличении значения этого свойства JDK будет пытаться снизить использование памяти. Чаще всего это достигается за счет уменьшения размера динамической памяти Java. Действия JDK по сокращению использования памяти могут привести к снижению производительности. Этот результат является намеренным. Приложение предоставляет данные об уровне дефицита через объект JMX MXBean по шкале от 0 (нет дефицита) до 10 (критическая нехватка свободной памяти). Для включения этой функции необходимо зарегистрировать jdk.management.cmm.SystemResourcePressureMXBean. После регистрации дефицит памяти задается с помощью атрибута "MemoryPressure".Также доступен
    новый флаг командной строки -XX:MemoryRestriction, который использует один из следующих аргументов: 'none', 'low', 'medium' или 'high'. Этот флаг задает начальный дефицит JDK и поддерживается также в тех случаях, когда объект MXBean не зарегистрирован. Для общего управления памятью (Cooperative Memory Management) требуется G1 GC (-XX:+UseG1GC). Эта функция не совместима с флагом -XX:+ExplicitGCInvokesConcurrent.
  • Новые коммерческие флаги
    Для коммерческих владельцев лицензий теперь доступны две новые опции VM:
    • -XX:+ResourceManagement
    • -XX:ResourceManagementSampleInterval=value (в миллисекундах)
    Подробнее см. документацию "Средство запуска Java".
  • Добавлена документация к программе установки MSI Installer
    Доступно Руководство по программе установки Microsoft Windows Installer (MSI) Enterprise JRE Installer. Для использования программы установки MSI Enterprise JRE Installer в производстве требуется коммерческая лицензия. Узнайте подробнее о коммерческих функциях и о том, как их активировать.
Дата окончания срока действия Java

Дата истечения срока действия 8u40: 14 апреля 2015 года. Срок действия Java истекает при появлении новой версии с исправлениями уязвимостей системы безопасности. Для систем, которые не подключаются к серверам Oracle, истечение срока действия JRE (версия 8u40) 14 мая 2015 года обеспечивает вспомогательный механизм. При выполнении любого из условий (становится доступной новая версия или истекает срок действия) Java предоставляет пользователям дополнительные предупреждения и напоминания о необходимости обновления до более новой версии.

Устранение ошибок предыдущих версий

Список ошибок предыдущих версий, исправленных в этом выпуске, см. на странице Устраненные ошибки версии JDK 8u40.

» Примечание к версии 8u40


Java 8 (обновление 31) (8u31)

Ключевые моменты версии
  • Данные IANA версии 2014j
    JDK 8u31 содержит версию 2014j данных часовых поясов IANA. Дополнительную информацию см. в разделе Версии данных часовых поясов в программном обеспечении JRE.
  • Протокол SSLv3 по умолчанию отключен
    Начиная с выпуска JDK 8u31 протокол SSLv3 (Secure Socket Layer) деактивирован и стал недоступен. См. свойство jdk.tls.disabledAlgorithms в файле \lib\security\java.security. Если все же необходимо использовать протокол SSLv3, его можно повторно активировать, удалив текст "SSLv3" из свойства jdk.tls.disabledAlgorithms в файле java.security или динамически установив это свойство безопасности перед инициализацией JSSE.
  • Изменения в Java Control Panel
    Начиная с выпуска JDK 8u31 протокол SSLv3 удален из параметров Java Control Panel Advanced. Если требуется использовать SSLv3 для приложений, включите его вручную, выполнив следующие действия:
    • Включите протокол SSLv3 на уровне JRE: как описано в предыдущем разделе.
    • Включите протокол SSLv3 на уровне развертывания: отредактируйте файл deployment.properties, добавив в него следующий текст:

      deployment.security.SSLv3=true.
Дата окончания срока действия Java

Дата истечения срока действия 8u31: 14 апреля 2015 года. Срок действия Java истекает при появлении новой версии с исправлениями уязвимостей системы безопасности. Для систем, которым невозможно подключиться к серверам Oracle, истечение срока действия JRE (версия 8u31) 14 мая 2015 года обеспечивается вспомогательным механизмом. При выполнении любого из условий (становится доступной новая версия или истекает срок действия) Java предоставляет пользователям дополнительные предупреждения и напоминания о необходимости обновления до более новой версии.

Устранение ошибок предыдущих версий

Данный выпуск содержит исправления для устранения уязвимостей системы безопасности. Дополнительные сведения см. в информационном бюллетене о критическом обновлении Oracle Java SE.

Список ошибок предыдущих версий, исправленных в этом выпуске, см. на странице Устранение ошибок версии JDK 8u31.

» Примечание к версии 8u31


Java 8 (обновление 25) (8u25)

Ключевые моменты версии
  • Данные IANA версии 2014c
    JDK 8u25 содержит версию 2014c данных часовых поясов IANA. Дополнительную информацию см. в разделе Версии данных часовых поясов в программном обеспечении JRE.
  • Исправление ошибки. Уменьшение режима предпочтений RC4 в списке разрешенных пакетов шифрования
    Это исправление снижает предпочтения RC4 на основе пакетов шифрования в списке разрешенных пакетов шифрования по умолчанию поставщика SunJSSE. См. 8043200 (не общедоступно).
  • Исправление ошибки.В JRE 8u20 происходит сбой при использовании японской службы обмена сообщениями на ОС Windows
    В VM происходит сбой при использовании элементов управления Swing при вводе японских или китайских символов на платформе Windows. Эта ошибка исправлена. См. 8058858 (не общедоступно).
Инструкции по отключению SSL v3.0 в Oracle JDK и JRE

Oracle рекомендует пользователям и разработчикам отключить протокол SSLv3.
» Как пользователи Java могут убедиться, что они не подвержены уязвимости 'Poodle' SSL V3.0?

Дата окончания срока действия Java

Срок действия версии 8u25: 20 января 2015 г. Срок действия Java истекает при появлении новой версии с исправлениями уязвимостей системы безопасности. Для систем, которым невозможно подключиться к серверам Oracle, истечение срока действия JRE (версия 8u25) 20 февраля 2015 года обеспечивается вспомогательным механизмом. При выполнении любого из условий (становится доступной новая версия или истекает срок действия) Java предоставляет пользователям дополнительные предупреждения и напоминания о необходимости обновления до более новой версии.

Устранение ошибок предыдущих версий

Данный выпуск содержит исправления для устранения уязвимостей системы безопасности. Дополнительные сведения см. в информационном бюллетене о критическом обновлении Oracle Java SE.

Список ошибок предыдущих версий, исправленных в этом выпуске, см. страницу Устранение ошибок версии JDK 8u25.

» Примечание к версии 8u25


Java 8 (обновление 20) (8u20)

Ключевые моменты версии
  • В Java Management API добавлены новые флаги
    Флагами MinHeapFreeRatio и MaxHeapFreeRatio теперь можно управлять. Это означает, что их можно менять во время выполнения с помощью API управления в Java. Поддержка этих флагов также добавлена в ParallelGC как часть политики адаптивного размера.
  • Изменения программы установки Java
    • Выпущена новая программа установки Microsoft Windows Installer (MSI) Enterprise JRE Installer, которая позволяет устанавливать JRE на предприятии. Дополнительную информацию см. в разделе Загрузка программы установки в документе Установка JRE для Microsoft Windows. Программа установки MSI Enterprise JRE Installer доступна только в виде компонента Java SE Advanced или Java SE Suite. Информацию об этих коммерческих продуктах см. в документе Java SE Advanced и Java SE Suite.
    • Программа удаления Java встроена в программу установки. С ее помощью вы сможете удалить старые версии Java из системы. Данное изменение применимо к 32- и 64-разрядным платформам Windows. См. Удаление JRE.
  • Изменения в Java Control Panel
    • На вкладке Update (Обновление) панели управления Java Control Panel теперь можно задать автоматическое обновление 64-разрядных JRE (в дополнение к 32-разрядным версиям), установленных в системе.
    • Уровень безопасности Medium (Умеренный) удален. Теперь доступны только уровни High (Высокий) и Very High (Очень высокий). Выполнение апплетов, не соответствующих новейшим требованиям безопасности, можно разрешить, добавив соответствующие сайты в список сайтов-исключений. Список сайтов-исключений позволяет пользователю разрешить выполнение тех же апплетов, которые доступны на уровне Medium (Умеренный). В этом случае разрешение на выполнение апплетов настраивается отдельно для каждого сайта, что снижает риск использования более низких уровней защиты.
  • Обновлен Java Compiler.
    Компилятор javac обновлен, теперь в нем реализован анализ определенного назначения для доступа к последнему пустому полю с помощью "this". Подробности см. в документе Руководство по совместимости JDK 8.
  • Изменения к минимальной требуемой версии Java для Java Plugin и Java Webstart
    Теперь минимальная требуемая версия Java для Java Plugin и Java Webstart: Java 5. Апплеты, которые не выполняются в Java 5 и более поздних версиях, необходимо перевести на более позднюю версию Java. Апплеты, которые написаны для более ранних версий, но могут выполняться по крайней мере в Java 5, продолжат функционировать.
  • Изменение в форматировании выходных данных UsageTracker
    . Теперь в форматировании выходных данных UsageTracker используются кавычки, это позволяет избежать путаницы в журнале. Это может потребовать изменения способа чтения данной информации. Можно задать для этой функции настройки предыдущей версии, хотя рекомендуется все же использовать новый формат. См. документацию к Java Usage Tracker.
  • Изменения в Java Packaging Tools
    • Инструмент javafxpackager переименован в javapackager
    • В команду развертывания javapackager добавлен параметр "-B". Он позволяет передавать аргументы в средства создания пакетов, которые используются для создания автономных приложений. Дополнительную информацию см. в документации к javapackager (Windows)/(Unix)
    • В JavaFX Ant Task Reference добавлен аргумент параметра средства помощи . Он позволяет указать аргумент (в элементе ) для средства создания пакетов, который используется для создания автономных приложений.
Дата окончания срока действия Java

Срок действия версии 8u20: 14 октября 2014 г. Срок действия Java истекает при появлении новой версии с исправлениями уязвимостей системы безопасности. Для систем, которым невозможно подключиться к серверам Oracle, истечение срока действия JRE (версия 8u20) 14 ноября 2014 года обеспечивается вспомогательным механизмом. При выполнении любого из условий (становится доступной новая версия или истекает срок действия) Java предоставляет пользователям дополнительные предупреждения и напоминания о необходимости обновления до более новой версии.

Устранение ошибок предыдущих версий

Список ошибок предыдущих версий, исправленных в этом выпуске, см. страницу Устранение ошибок версии JDK 8u20.

» Примечание к версии 8u20


Java 8 (обновление 11 (8u11))

Данный выпуск содержит исправления для устранения уязвимостей системы безопасности. Дополнительные сведения см. в информационном бюллетене о критическом обновлении Oracle.

Список ошибок предыдущих версий, исправленных в этом выпуске, см. страницу Устранение ошибок версии JDK 8u11.

» Примечание к версии 8u11


Java 8 (обновление 5) (8u5)

Данный выпуск содержит исправления для устранения уязвимостей системы безопасности. Дополнительные сведения см. в информационном бюллетене о критическом обновлении Oracle.

Список ошибок предыдущих версий, исправленных в этом выпуске, см. страницу Устранение ошибок версии JDK 8u5.

» Примечание к версии 8u5


Выпуск Java 8

» Примечания к выпуску JDK и JRE 8


Дополнительные ресурсы:



Выбрать язык | О Java | Поддержка | Разработчики
Конфиденциальность | Условия использования | Товарные знаки | Заявление об ограничении ответственности

Oracle