В этом документе содержится последняя информация о выпуске Axiom JDK 8u402+7.
Данный релиз соответствует OpenJDK 8u402+7, номер версии Axiom JDK - 8.
Axiom является сертифицированным Java SE 8-совместимым дистрибутивом OpenJDK 8, который работает на серверах (Linux x86_64, Linux ARM64, Windows 64), настольных компьютерах (Windows 64, Windows 32, Mac, Linux x86_64) и встроенных устройствах (Linux ARM64, Linux ARMv7, включая Raspberry Pi 2 & 3 (ARMv6 hardfloat)). Axiom JDK имеет следующие дополнения:
Версия для Linux x86_64 содержит экспериментальную поддержку ZGC.
В версии для Linux x86_64, ARMv8 и ARMv7 можно выбрать клиентскую виртуальную машину (Client VM), серверную виртуальную машину (Server VM) и минимальную виртуальную машину (Minimal VM).
Версия для Alpine Linux x86_64 построена с поддержкой musl.
Версии для Windows x86_64, Windows x86, Windows ARMv8, Mac, Linux x86_64, Linux x86 и Linux ARMv7 содержат OpenJFX 8.
Версия для Linux ARMv7 содержит Device IO API, скомпилированный для Raspberry Pi.
Пожалуйста, прочитайте примечания к релизу Oracle JDK 8u402 для получения дополнительной информации о функционале JDK 8. В этом документе описываются особенности дистрибутива Axiom по сравнению с дистрибутивом Oracle JDK 8.
Axiom поддерживается в следующих ОС:
Ubuntu Linux 16.04, 18.04 (x86, x86_64, ARMv7, ARMv8)
Debian Linux 8, 9 (x86, x86_64, ARMv7, ARMv8)
Red Hat, Oracle Linux и CentOS 8x, 6.x, 7.x (x86, x86_64, ARMv7, ARMv8)
Alpine Linux 3.7+
SUSE Linux Enterprise 12, 16, tumbleweed (x86_64, ARMv8)
Apple macOS 10.11+ (x86_64, ARMv8)
Microsoft Windows 2019, Windows 2016, Windows 2012 R2, Windows 10, Windows 8, Windows 7 (x86, x86_64, ARMv8)
Также известно, что Axiom JDK работает с некоторыми другими дистрибутивами Linux и версиями Windows.
Минимальная поддерживаемая версия ядра Linux - 2.6.18, версия GLIBC - 2.6. AxiomFX работает на всех поддерживаемых версиях Ubuntu, семействе Red Hat Linux начиная с версии 7.x и SUSE с бэкэндом GTK2.
Axiom протестирован и сертифицирован на Raspberry Pi 2, 3 и 4 под управлением следующих ОС:
Raspbian OS (armhf)
OpenSUSE (armv8)
Также есть успешный опыт запуска и работы на Debian (armhf) и Ubuntu (armhf).
Axiom JDK 8 распространяется в виде .msi, .dmg, .deb, .rpm, .zip и .tar.gz. Пожалуйста, выберите формат, который наиболее подходит для ваших целей.
Axiom 8 содержит весь функционал, поддерживаемый OpenJDK 8.
С появлением Jigsaw в JDK 9 и минимальной виртуальной машины (Minimal VM) теперь можно создать среду исполнения, достаточную для запуска приложения и в то же время оптимизированную по размеру. Чтобы создать среду выполнения только с минимальной виртуальной машиной, добавьте опцию - vm=minimal jlink.
Axiom JDK продолжает поддерживать AOT и Graal JIT. Поскольку в сборках OpenJDK 8 эти экспериментальные функции признаны устаревшими, для безошибочной компиляции нативных образов рекомендуется использовать Axiom Native Image Kit.
По умолчанию Axiom использует серверную виртуальную машину (Server VM). Серверная виртуальная машина и клиентская виртуальная машина могут быть включены с помощью параметров командной строки -server и -client соответственно. В случае, если требуется минимальный размер среды исполенения, можно использовать Minimal VM, которая оптимизирована по размеру. Minimal VM имеет только компилятор C1 JIT, Serial GC и не имеет функционала Serviceability. Minimal VM можно включить параметром командной строки -minimal.
Axiom JDK 8 поставляется в комплекте со сборкой платформы AxiomFX, основанной на OpenJFX. В следующих таблицах перечислены состояния модулей Java FX дистрибутива Axiom.
Java FX Graphics - поддерживается.
Java FX Controls - поддерживается.
Java FX Media - не поддерживается.
Java FX Webkit - не поддерживается.
Для armhf работают следующие графические конвейеры: EGL, SW (direct framebuffer) и GTK. По умолчанию Axiom пытается использовать конвейер EGL, который требует наличия библиотек EGL. Если они не найдены, реализация возвращается к программному обеспечению.
Используйте следующие параметры командной строки, чтобы указать конвейер рендеринга:
-Dprism.order=sw
- программный конвейер рендеринга. *
-Dprism.order=es2
- EGL-конвейер и аппаратное ускорение. *
-Djavafx.platform=gtk
, если вы хотите запустить приложение AxiomFX,
используя Axiom из X11.
\ Не поддерживается на Raspberry Pi 4.
Дополнительная информация доступна на следующей wiki странице.
Axiom JDK 8 для armhf поставляется со встроенным модулем реализации API ввода-вывода (DIO) устройства OpenJDK. DIO предоставляет Java API для доступа к выводам Raspberry PI GPIO и для связи с периферийными устройствами:
Универсальный ввод / вывод (GPIO).
Межинтегральная шина (I2C), последовательный интерфейс (SPI).
Универсальный асинхронный приемник / передатчик (UART).
Дополнительная информация доступна на следующей wiki странице.
С 2017 года в Raspbian OS изменилось расположение бибилитек libEGL.so и libGLESv2.so для чипа Broadcom. Если вы хотите использовать аппаратное ускорение EGL, доступное в видеодрайверах Broadcom в AxiomFX, при работе в Raspbian OS, выполните следующую команду:
cd /opt/vc/lib
sudo ln -s libbrcmEGL.so libEGL.so
sudo ln -s libbrcmGLESv2.so libGLESv2.so
Axiom JDK содержит исправления уязвимостей Oracle Java SE. Пожалуйста, обратитесь к документации Oracle для получения деталей о проблемах, исправленных в данной версии.
В этой версии отсутствуют известные проблемы.
Следующий список содержит важные исправления для версии 8u402.
ID проблемы: | |
---|---|
JDK-8316606 | Резюме: Добавление обработки yes/no в настройке krb5.conf Описание: Параметр allow_weak_crypto в файле /etc/krb5.conf теперь правильно обрабатывает оба ответа: true и yes при указании, что пользователи хотят разрешить слабое шифрование. |
JDK-8316635 | Резюме: Удаление сертификата SECOM Описание: Сертификат SECOM, срок действия которого истекает в сентябре 2023 г., был удален. |
JDK-8317321 | Резюме: Массивы следует клонировать в нескольких классах обратного вызова JAAS. Описание: В JAAS ChoiceCallback и ConfirmationCallback массивы не клонировались при передаче в конструктор или возврате. Это позволяло внешней программе получить доступ к внутренним полям этих классов. |
JDK-8319176 | Резюме: Добавление сертификата Certigna Root CA - 2 Описание: Корневой сертификат Certinga добавлен в хранилище доверенных сертификатов cacerts. |
JDK-8320704 | Резюме: Увеличение значения по умолчанию для jdk.jar.maxSignatureFileSize, которое было слишком низким для JAR-файлов, таких как унифицированный jar-файл агента WhiteSource/Mend Описание: Системное свойство jdk.jar.maxSignatureFileSize позволяет приложениям контролировать максимальный размер файлов подписей в подписанном JAR. Его значение по умолчанию увеличено с 8000000 байт (8 МБ) до 16000000 байт (16 МБ). |
JDK-8322257 | Резюме: Добавление сертификата Telia Root CA v2 Описание: Корневой сертификат Telia добавлен в хранилище доверенных сертификатов. |
JDK-8322258 | Резюме: Добавление сертификатов Let’s Encrypt ISRG Root X2 Описание: Добавлены новые корневые сертификаты Let’s Encrypt. |
JDK-8322259 | Резюме: Добавление четырех сертификатов DigiCert root certificates Описание: В JDK 8 добавлены четыре новых корневых сертификата DigiCert. |
Следующий список содержит дефекты, исправленные в JDK версии 8u402.
ID проблемы | Резюме |
---|---|
JDK-6528710 | sRGB-ColorSpace to sRGB-ColorSpace Conversion |
JDK-8029995 | accept yes/no for boolean krb5.conf settings |
JDK-8159156 | [TESTBUG] ReserveMemory test is not useful on Aix. |
JDK-8176509 | Use pandoc for converting build readme to html |
JDK-8206179 | com/sun/management/OperatingSystemMXBean/GetCommittedVirtualMemorySize.java fails with Committed virtual memory size illegal value |
JDK-8207404 | MulticastSocket tests failing on AIX |
JDK-8209115 | adjust libsplashscreen linux ppc64le builds for easier libpng update |
JDK-8212677 | X11 default visual support for IM status window on VNC |
JDK-8239365 | ProcessBuilder test modifications for AIX execution |
JDK-8242330 | Arrays should be cloned in several JAAS Callback classes |
JDK-8271838 | AmazonCA.java interop test fails |
JDK-8283441 | C2: segmentation fault in ciMethodBlocks::make_block_at(int) |
JDK-8285398 | Cache the results of constraint checks |
JDK-8285696 | AlgorithmConstraints:permits not throwing IllegalArgumentException when ‘alg’ is null |
JDK-8295685 | Update Libpng to 1.6.38 |
JDK-8302017 | Allocate BadPaddingException only if it will be thrown |
JDK-8305329 | [8u] Unify test libraries into single test library - step 1 |
JDK-8305815 | Update Libpng to 1.6.39 |
JDK-8307837 | [8u] Check step in GHA should also print errors |
JDK-8308204 | Enhanced certificate processing |
JDK-8309088 | security/infra/java/security/cert/CertPathValidator/certification/AmazonCA.java fails |
JDK-8311813 | C1: Uninitialized PhiResolver::_loop field |
JDK-8312489 | Increase jdk.jar.maxSignatureFileSize default which is too low for JARs such as WhiteSource/Mend unified agent jar |
JDK-8312535 | MidiSystem.getSoundbank() throws unexpected SecurityException |
JDK-8314284 | Enhance Nashorn performance |
JDK-8314295 | Enhance verification of verifier |
JDK-8314307 | Improve loop handling |
JDK-8314468 | Improve Compiler loops |
JDK-8315135 | Memory leak in the native implementation of Pack200.Unpacker.unpack() |
JDK-8315280 | Bump update version of OpenJDK: 8u402 |
JDK-8315506 | C99 compatibility issue in LinuxNativeDispatcher |
JDK-8316976 | Improve signature handling |
JDK-8317291 | Missing null check for nmethod::is_native_method() |
JDK-8317373 | Add Telia Root CA v2 |
JDK-8317374 | Add Let’s Encrypt ISRG Root X2 |
JDK-8317547 | Enhance TLS connection support |
JDK-8318759 | Add four DigiCert root certificates |
JDK-8319187 | Add three eMudhra emSign roots |
JDK-8319405 | [s390] [jdk8] Increase javac default stack size for s390x zero |
JDK-8320597 | RSA signature verification fails on signed data that does not encode params correctly |
Следующий список содержит дефекты, исправленные в JFX версии 8u402.
ID проблемы | Резюме |
---|---|
JDK-8284544 | [Win] Name-Property of Spinner cannot be changed |
JDK-8297067 | Update Gradle to 7.6 |
JDK-8306918 | WebView: Update Public Suffix List to 88467c9 |
JDK-8310681 | Update WebKit to 616.1 |
JDK-8311097 | Synchron XMLHttpRequest not receiving data |
JDK-8313048 | Better Glyph handling |
JDK-8313056 | General enhancements of Glass |
JDK-8313105 | Improved media framing |
JDK-8313177 | Web Workers timeout with Webkit 616.1 |
JDK-8313181 | Enabling modern media controls on webkit 616.1 does not load button images on HTML5 video Element |
JDK-8313321 | Set minimum python version in WebKit cmake scripts |
JDK-8313711 | Cherry-pick WebKit 616.1 stabilization fixes |
JDK-8313856 | Replace VLA with malloc in pango |
JDK-8313900 | Possible NULL pointer access in NativeAudioSpectrum and NativeVideoBuffer |
JDK-8314212 | Crash when loading cnn.com in WebView |
JDK-8315074 | Possible null pointer access in native glass |
JDK-8315657 | Application window not activated in macOS 14 Sonoma |
JDK-8315870 | icu fails to compile with Visual Studio 2022 17.6.5 |
JDK-8315958 | Missing range checks in GlassPasteboard |
JDK-8317508 | Provide media support for libavcodec version 60 |
JDK-8318708 | FX: Update copyright year in docs, readme files to 2024 |
JDK-8319066 | Application window not always activated in macOS 14 Sonoma |