Данный релиз соответствует OpenJDK 20.0.1+10, номер версии Axiom JDK - 20
Axiom является сертифицированным Java SE 20-совместимым дистрибутивом OpenJDK 20, который работает на серверах (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 имеет следующие дополнения:
Пожалуйста, прочитайте примечания к релизу Oracle JDK 20.0.1 для получения дополнительной информации о функционале JDK 20. В этом документе описываются особенности дистрибутива Axiom по сравнению с дистрибутивом Oracle JDK 20.
Axiom поддерживается в следующих ОС:
Также известно, 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 под управлением следующих ОС:
Также есть успешный опыт запуска и работы на Debian (armhf) и Ubuntu (armhf).
Axiom JDK 20 распространяется в виде .msi, .dmg, .deb, .rpm, .zip и .tar.gz. Пожалуйста, выберите формат, который наиболее подходит для ваших целей.
Axiom JDK 20 содержит весь функционал, поддерживаемый OpenJDK 20.
С появлением Jigsaw в JDK 9 и минимальной виртуальной машины (Minimal VM) теперь можно создать среду исполнения, достаточную для запуска приложения и в то же время оптимизированную по размеру. Чтобы создать среду выполнения только с минимальной виртуальной машиной, добавьте опцию - vm=minimal jlink.
Axiom JDK продолжает поддерживать AOT и Graal JIT. Поскольку в сборках OpenJDK 20 эти экспериментальные функции признаны устаревшими, для безошибочной компиляции нативных образов рекомендуется использовать Axiom Native Image Kit.
По умолчанию Axiom использует серверную виртуальную машину (Server VM). Серверная виртуальная машина и клиентская виртуальная машина могут быть включены с помощью параметров командной строки -server и -client соответственно. В случае, если требуется минимальный размер среды исполенения, можно использовать Minimal VM, которая оптимизирована по размеру. Minimal VM имеет только компилятор C1 JIT, Serial GC и не имеет функционала Serviceability. Minimal VM можно включить параметром командной строки -minimal.
Axiom JDK 20 поставляется в комплекте со сборкой платформы AxiomFX, основанной на OpenJFX. В следующих таблицах перечислены состояния модулей Java FX дистрибутива Axiom.
Для armhf работают следующие графические конвейеры: EGL, SW (direct framebuffer) и GTK. По умолчанию Axiom пытается использовать конвейер EGL, который требует наличия библиотек EGL. Если они не найдены, реализация возвращается к программному обеспечению.
Используйте следующие параметры командной строки, чтобы указать конвейер рендеринга:
* Не поддерживается на Raspberry Pi 4.
Дополнительная информация доступна на следующей wiki странице.
Axiom JDK 20 для armhf поставляется со встроенным модулем реализации API ввода-вывода (DIO) устройства OpenJDK. DIO предоставляет Java API для доступа к выводам Raspberry PI GPIO и для связи с периферийными устройствами:
Дополнительная информация доступна на следующей 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 для получения деталей о проблемах, исправленных в данной версии.
Issue | Description |
---|---|
8299781 | Improve JFX navigation |
8299977 | Update WebKit to 615.1 |
8300954 | HTML default Range input control not rendered |
8301022 | Video distortion is observed while playing youtube video |
8301712 | [linux] Crash on exit from WebKit 615.1 |
8302294 | Cherry-pick WebKit 615.1 stabilization fixes |
8302684 | Cherry-pick WebKit 615.1 stabilization fixes (2) |
8303217 | Webview loaded webpage is not showing play, volume related buttons for embeded Audio/Video elements |
8303501 | Unable to navigate to relative URLs after fix for JDK-8299781 |
8303987 | Change JavaFX release version to 20.0.1 in jfx20u |
8304008 | Update README.md and CONTRIBUTING.md for jfx update repos |
8304359 | Create release notes for JavaFX 20 |
8299129 | Enhance NameService lookups |
8298667 | Improved path handling |
8298310 | Enhance TLS session negotiation |
8297371 | Improve UTF8 representation redux |
8296832 | Improve Swing platform support |
8296692 | Improve String platform support |
8296684 | Improve String platform support |
8296676 | Improve String platform support |
8295304 | Runtime support improvements |
8294474 | Better AES support |
8288436 | Improve Xalan supports |
8287404 | Improve ping times |
8301123 | Enable Symbol refcounting underflow checks in PRODUCT |
8303412 | Update linux_x64-to-linux_aarch64 cross compilation devkit at Oracle |
8278965 | crash in SymbolTable::do_lookup |
8301876 | Crash in DumpTimeClassInfo::add_verification_constraint |
8302202 | Incorrect desugaring of null-allowed nested patterns |
8301858 | Verification error when compiling switch with record patterns |
8295951 | intermittent cmp_baseline task failures with CDS files |
8302879 | doc/building.md update link to jtreg builds |
8245654 | Add Certigna Root CA |
8299194 | CustomTzIDCheckDST.java may fail at future date |
8208077 | File.listRoots performance degradation |
8299843 | Bump version numbers for 20.0.1 |