Поделиться через


Заметки о выпуске для Microsoft Build OpenJDK

В этой статье перечислены исправления, содержащиеся в выпусках пакетов Microsoft Build OpenJDK, а также улучшения, ожидающие объединения вышестоящей части корпорации Майкрософт.

Известные проблемы

OpenJDK 17

  • При запуске Alpine x64 (musl) выполняет сборку в Alpine Linux 3.19.0 или более поздней версии, SecureDirectoryStream не поддерживается.

OpenJDK 11

  • При запуске Alpine x64 (musl) выполняет сборку в Alpine Linux 3.19.0 или более поздней версии, SecureDirectoryStream не поддерживается.

OpenJDK 21

OpenJDK 21.0.7

Усовершенствования / дополнительные исправления

  • Backport of JDK-8350609: уборка неизвестного опкода (0xB) для Windows
  • Включена настройка выбора GPU в сборках Windows с помощью NvOptimusEnablement и AmdPowerXpressRequestHighPerformance
    • Экспортированы указания драйвера для предпочтения высокопроизводительного GPU (NVIDIA/AMD) в JVM
    • Полезно в таких средах, как Minecraft, IDE или инструменты машинного обучения, чтобы обеспечить задействование GPU.

OpenJDK 21.0.6

Усовершенствования / дополнительные исправления

  • Обратная портировка JDK-8338136: Hotspot должен поддерживать несколько больших размеров страниц на Windows
  • Backport of JDK-8345296: AArch64: виртуальная машина завершает работу с SIGILL при запрете prctl
  • Обратный перенос JDK-8335977: При деоптимизации происходит ошибка утверждения "объект уже должен быть перераспределён".
  • Backport of JDK-8340454: C2 EA утверждает, что "предыдущий редуцируемый Phi больше не является редуцируемым перед SUT"

OpenJDK 21.0.5

Усовершенствования

  • Удалены вызовы незадокументированных API Windows (NtCreateKeyedEvent, NtReleaseKeyedEvent, NtWaitForKeyedEvent).
  • Backport of JDK-8334475: UnsafeIntrinsicsTest.java#ZGenerationalDebug assert(!assert_on_failure) не удалось: имеет набор битов низкого порядка.

OpenJDK 21.0.4

Усовершенствования

  • Позволяет хот-точке использовать процессоры во всех группах процессоров Windows в Windows 11/Windows Server 2022 и более поздних версий.

OpenJDK 21.0.3

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Включает новое событие JFR для отслеживания загрузки очереди компилятора (обратный порт JDK-8317562).

OpenJDK 21.0.2

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Включает новое событие JFR для отслеживания загрузки очереди компилятора (обратный порт JDK-8317562).

OpenJDK 21.0.1

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

Известные проблемы

  • Двоичные файлы AArch64 не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 21.0.0

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

Известные проблемы

  • Двоичные файлы AArch64 не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17

OpenJDK 17.0.15

Усовершенствования / дополнительные исправления

  • Backport of JDK-8350609: уборка неизвестного опкода (0xB) для Windows

OpenJDK 17.0.14

Усовершенствования / дополнительные исправления

  • Обратная портировка JDK-8338136: Hotspot должен поддерживать несколько больших размеров страниц на Windows
  • Backport of JDK-8345296: AArch64: виртуальная машина завершает работу с SIGILL при запрете prctl
  • Обратный перенос JDK-8335977: При деоптимизации происходит ошибка утверждения "объект уже должен быть перераспределён".
  • Backport of JDK-8340454: C2 EA утверждает, что "предыдущий редуцируемый Phi больше не является редуцируемым перед SUT"

OpenJDK 17.0.13

Усовершенствования

  • Удалены вызовы незадокументированных API Windows (NtCreateKeyedEvent, NtReleaseKeyedEvent, NtWaitForKeyedEvent).

OpenJDK 17.0.12

Усовершенствования

  • Позволяет хот-точке использовать процессоры во всех группах процессоров Windows в Windows 11/Windows Server 2022 и более поздних версий.
  • Отключите по умолчанию профилактическую коллекцию G1.

OpenJDK 17.0.11

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Добавлена поддержка SST-файлов в качестве KeyStores в Windows (см. JDK-8306688), которые можно включить, используя следующее свойство:

    -Dsun.security.mscapi.enableSST=true

OpenJDK 17.0.10

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Добавлена поддержка SST-файлов в качестве KeyStores в Windows (см. JDK-8306688), которые можно включить, используя следующее свойство:

    -Dsun.security.mscapi.enableSST=true

OpenJDK 17.0.9

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Добавлена поддержка SST-файлов в качестве KeyStores в Windows (см. JDK-8306688), которые можно включить, используя следующее свойство:

    -Dsun.security.mscapi.enableSST=true

  • Backport of JDK-8303607 поставщик SunMSCAPI вызывает утечки памяти и ключей

Известные проблемы

  • Двоичные файлы AArch64 не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17.0.8

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. Эта функция теперь включена по умолчанию. Чтобы отключить его, разработчики должны использовать следующий флаг JVM:

    -XX:-ReduceAllocationMerges

Известные проблемы

  • Двоичные файлы AArch64 не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17.0.7

Усовершенствования

  • Включает экспериментальную функцию для повышения производительности escape-анализа путем увеличения числа возможностей для скалярной замены. Чтобы включить эту функцию, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

Известные проблемы

  • Двоичные файлы AArch64 не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17.0.6

Усовершенствования

  • Включает экспериментальную функцию для повышения производительности escape-анализа путем увеличения числа возможностей для скалярной замены. Чтобы включить эту функцию, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17.0.5

Усовершенствования

  • Добавлена экспериментальная функция для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. Чтобы включить эту функцию, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17.0.4.1

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17.0.4

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17.0.3

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 17.0.2

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.
  • Пакет RPM может не обновляться автоматически. Выполните yum install msopenjdk-17-17.0.2+8_LTS-1 принудительное обновление до последней версии.

OpenJDK 17.0.1

Известные проблемы

  • Двоичные файлы для AArch64 не содержат архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.
  • Пакет RPM может не обновляться автоматически. Выполните yum install msopenjdk-17-17.0.1+12_LTS-1 принудительное обновление до последней версии.

OpenJDK 17.0.0

OpenJDK 11

OpenJDK 11.0.27

Усовершенствования / дополнительные исправления

  • Никаких дополнительных улучшений и исправлений.

OpenJDK 11.0.26

Усовершенствования / дополнительные исправления

  • Обратный перенос JDK-8335977: При деоптимизации происходит ошибка утверждения "объект уже должен быть перераспределён".
  • Backport of JDK-8340454: C2 EA утверждает, что "предыдущий редуцируемый Phi больше не является редуцируемым перед SUT"

OpenJDK 11.0.25

Усовершенствования

  • Позволяет хот-точке использовать процессоры во всех группах процессоров Windows в Windows 11/Windows Server 2022 и более поздних версий.

OpenJDK 11.0.24

Усовершенствования

  • Позволяет хот-точке использовать процессоры во всех группах процессоров Windows в Windows 11/Windows Server 2022 и более поздних версий.

OpenJDK 11.0.23

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Добавлена поддержка SST-файлов в качестве KeyStores в Windows (см. JDK-8306688), которые можно включить, используя следующее свойство:

    -Dsun.security.mscapi.enableSST=true

  • Резервные порты следующих улучшений и исправлений ошибок:

    • JDK-8250902 Реализация встроенных функций MD5 в системе отслеживания ошибок Java на x86
    • JDK Flight Recorder
      • JDK-8226897 Предоставление возраста объекта с помощью события JFR OldObjectSample
      • JDK-8232594 Сделать данные, выводимые командой JFR, более понятными пользователю
      • JDK-8216041 Деоптимизация запроса события
      • JDK-8216995 Очистка командной строки JFR
      • JDK-8217089 Отложенная установка компонентов интерфейса операционной системы для улучшения загрузки

Известные проблемы

  • Двоичные файлы для macOS/AArch64 не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.22

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Добавлена поддержка SST-файлов в качестве KeyStores в Windows (см. JDK-8306688), которые можно включить, используя следующее свойство:

    -Dsun.security.mscapi.enableSST=true

  • Резервные порты следующих улучшений и исправлений ошибок:

    • JDK-8250902 Реализация встроенных функций MD5 в системе отслеживания ошибок Java на x86
    • JDK Flight Recorder
      • JDK-8226897 Предоставление возраста объекта с помощью события JFR OldObjectSample
      • JDK-8232594 Сделать данные, выводимые командой JFR, более понятными пользователю
      • JDK-8216041 Деоптимизация запроса события
      • JDK-8216995 Очистка командной строки JFR
      • JDK-8217089 Отложенная установка компонентов интерфейса операционной системы для улучшения загрузки

Известные проблемы

  • Двоичные файлы для macOS/AArch64 не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.21

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges

  • Добавлена поддержка SST-файлов в качестве KeyStores в Windows (см. JDK-8306688), которые можно включить, используя следующее свойство:

    -Dsun.security.mscapi.enableSST=true

  • Резервные порты следующих улучшений и исправлений ошибок:

    • JDK-8250902 Реализация встроенных функций MD5 в системе отслеживания ошибок Java на x86
    • JDK Flight Recorder
      • JDK-8226897 Предоставление возраста объекта с помощью события JFR OldObjectSample
      • JDK-8232594 Сделать данные, выводимые командой JFR, более понятными пользователю
      • JDK-8216041 Деоптимизация запроса события
      • JDK-8216995 Очистка командной строки JFR
      • JDK-8217089 Отложенная установка компонентов интерфейса операционной системы для улучшения загрузки
    • JDK-8303607 Поставщик SunMSCAPI вызывает утечку памяти и ключей

Известные проблемы

  • Двоичные файлы для AArch64 не содержат архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.20.1

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. По умолчанию эта функция включена. Чтобы отключить его, разработчики должны использовать следующий флаг JVM:

    -XX:-ReduceAllocationMerges

  • Резервные порты следующих улучшений и исправлений ошибок:

    • JDK-8250902 Реализация встроенных функций MD5 в системе отслеживания ошибок Java на x86
    • JDK Flight Recorder
      • JDK-8226897 Предоставление возраста объекта с помощью события JFR OldObjectSample
      • JDK-8232594 Сделать данные, выводимые командой JFR, более понятными пользователю
      • JDK-8216041 Деоптимизация запроса события
      • JDK-8216995 Очистка командной строки JFR
      • JDK-8217089 Отложенная установка компонентов интерфейса операционной системы для улучшения загрузки

Известные проблемы

  • Двоичные файлы для AArch64 не содержат архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.20

Усовершенствования

  • Включает новую функцию (см. JDK-8287061 и JDK-8289943) для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. Эта функция теперь включена по умолчанию. Чтобы отключить его, разработчики должны использовать следующий флаг JVM:

    -XX:-ReduceAllocationMerges

  • Резервные порты следующих улучшений и исправлений ошибок:

    • JDK-8250902 Реализация встроенных функций MD5 в системе отслеживания ошибок Java на x86
    • JDK Flight Recorder
      • JDK-8226897 Предоставление возраста объекта с помощью события JFR OldObjectSample
      • JDK-8232594 Сделать данные, выводимые командой JFR, более понятными пользователю
      • JDK-8216041 Деоптимизация запроса события
      • JDK-8216995 Очистка командной строки JFR
      • JDK-8217089 Отложенная установка компонентов интерфейса операционной системы для улучшения загрузки

Известные проблемы

  • Двоичные файлы для AArch64 не содержат архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.19

Усовершенствования

  • Включает экспериментальную функцию для повышения производительности escape-анализа путем увеличения числа возможностей для скалярной замены. Чтобы включить эту функцию, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

  • Резервные порты следующих улучшений и исправлений ошибок:

    • JDK-8250902 Реализация встроенных функций MD5 в системе отслеживания ошибок Java на x86
    • JFR
      • JDK-8226897 Предоставление возраста объекта с событием JFR OldObjectSample — система ошибок Java
      • JDK-8232594 Сделать выходные данные команды JFR более понятными для пользователя — система ошибок Java
      • JDK-8216041 [Запрос события] - деоптимизация - система ошибок Java

Известные проблемы

  • Двоичные файлы для AArch64 не содержат архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.18

Усовершенствования

  • Включает экспериментальную функцию для повышения производительности escape-анализа путем увеличения числа возможностей для скалярной замены. Чтобы включить эту функцию, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

  • Резервные порты следующих улучшений и исправлений ошибок:

    • JDK-8250902 Реализация встроенных функций MD5 в системе отслеживания ошибок Java на x86
    • JFR
      • JDK-8226897 Предоставление возраста объекта с событием JFR OldObjectSample — система ошибок Java
      • JDK-8232594 Сделать выходные данные команды JFR более понятными для пользователя — система ошибок Java
      • JDK-8216041 [Запрос события] - деоптимизация - система ошибок Java

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.17

Усовершенствования

  • Добавлена экспериментальная функция для повышения производительности escape-анализа путем увеличения числа возможностей скалярной замены. Чтобы включить эту функцию, разработчики должны использовать следующие флаги JVM:

    -XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.16.1

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.16

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.15

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.14.1

Усовершенствования

  • Назад портирование JEP 391 macOS/AArch64 Port
  • Обратный порт JEP 386 для Alpine Linux

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.14

Усовершенствования

  • Назад портирование JEP 391 macOS/AArch64 Port
  • Обратный порт JEP 386 для Alpine Linux

Известные проблемы

  • Двоичные файлы не имеют архивов CDS по умолчанию (JEP 341). Запустите java -Xshare:dump , чтобы создать их после установки.

OpenJDK 11.0.13

OpenJDK 11.0.12

Усовершенствования

OpenJDK 11.0.11

Список исправлений безопасности и других исправлений в OpenJDK 11.0.11

Усовершенствования

  • JDK-8250902 Реализация встроенных функций MD5 в системе отслеживания ошибок Java на x86

Предоставление отзывов о Сборке OpenJDK в Microsoft

Отправьте нам свои комментарии, мысли и идеи, чтобы помочь нам улучшить Microsoft Build OpenJDK. Посетите страницу обсуждений OpenJDK на сайте GitHub , чтобы отправить нам свой отзыв.

Java и OpenJDK — это товарные знаки или зарегистрированные товарные знаки Oracle и /или ее филиалов.

Другие выпуски

OpenJDK 16.0.2

Усовершенствования