В этом документе содержится последняя информация о выпуске Axiom JDK 22.0.1+10.
Данный релиз соответствует OpenJDK 22.0.1+10, номер версии Axiom JDK - 22.
Axiom JDK является сертифицированным Java SE 22-совместимым дистрибутивом OpenJDK 22, который работает на серверах (Linux x86_64, Linux ARM64, Windows 64), настольных компьютерах (Windows 64, Mac OS x86_64, Mac OS AArch64, 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 и aarch64 построены с поддержкой musl.
Версии для Windows x86_64, Windows ARMv8, Mac, Linux x86_64 и Linux ARMv7 содержат OpenJFX 22.
Версия для Linux ARMv7 содержит Device IO API, скомпилированный для Raspberry Pi.
Обратите внимание, что Axiom JDK 22.0.1 недоступен для следующих операционных систем и не может быть запущен на них:
Windows x86 (32-bit)
macOS 10.x
Axiom JDK 22 распространяется в виде .msi, .dmg, .deb, .rpm, .zip и .tar.gz. Пожалуйста, выберите формат, который наиболее подходит для ваших целей.
Axiom 22 содержит весь функционал, поддерживаемый OpenJDK 22.
С появлением Jigsaw в JDK 9 и минимальной виртуальной машины (Minimal VM) теперь можно создать среду исполнения, достаточную для запуска приложения и в то же время оптимизированную по размеру. Чтобы создать среду выполнения только с минимальной виртуальной машиной, добавьте опцию - vm=minimal jlink.
Axiom JDK продолжает поддерживать AOT и Graal JIT. Поскольку в сборках OpenJDK 22 эти экспериментальные функции признаны устаревшими, для безошибочной компиляции нативных образов рекомендуется использовать Axiom Native Image Kit.
По умолчанию Axiom использует серверную виртуальную машину (Server VM). Серверная виртуальная машина и клиентская виртуальная машина могут быть включены с помощью параметров командной строки -server и -client соответственно. В случае, если требуется минимальный размер среды исполенения, можно использовать Minimal VM, которая оптимизирована по размеру. Minimal VM имеет только компилятор C1 JIT, Serial GC и не имеет функционала Serviceability. Minimal VM можно включить параметром командной строки -minimal.
Следующий список содержит исправления уязвимостей для версии 22.0.1.
CVE ID | CVSS score | Component | Module | Attack Vector | Complexity | Privileges | User Interaction | Scope | Confidentiality | Integrity | Availability |
---|---|---|---|---|---|---|---|---|---|---|---|
CVE-2023-41993 |
7.5 |
javafx |
web |
network |
high |
none |
required |
unchanged |
high |
high |
high |
CVE-2024-21002 |
2.5 |
javafx |
graphics |
local |
high |
none |
required |
unchanged |
none |
low |
none |
CVE-2024-21003 |
3.1 |
javafx |
graphics |
network |
high |
none |
required |
unchanged |
none |
low |
none |
CVE-2024-21004 |
2.5 |
javafx |
window-toolkit |
local |
high |
none |
required |
unchanged |
none |
low |
none |
CVE-2024-21005 |
3.1 |
javafx |
graphics |
network |
high |
none |
required |
unchanged |
none |
low |
none |
CVE-2024-21011 |
3.7 |
hotspot |
runtime |
network |
high |
none |
none |
unchanged |
none |
none |
low |
CVE-2024-21012 |
3.7 |
core-libs |
java.net |
network |
high |
none |
none |
unchanged |
none |
low |
none |
CVE-2024-21068 |
3.7 |
hotspot |
compiler |
network |
high |
none |
none |
unchanged |
none |
low |
none |
Следующий список содержит известные проблемы для версии 22.0.1.
ID проблемы | |
---|---|
JDK-8322567 |
Резюме: Увеличивается время запуска при использовании Описание: Увеличение времени запуска на 10% можно наблюдать при использовании опции '-XX:StartFlightRecording' для небольших приложений. Временное решение: Н/Д |
JDK-8325737 |
Резюме: Описание: Строки, считанные с помощью Временное решение: Проблему можно обойти запустив JDK 22 с опцией |
Н/Д |
Резюме: AxiomFX и EGL на ОС Raspbian Описание: С 2017 года в Raspbian OS изменилось расположение бибилитек libEGL.so и libGLESv2.so для чипа Broadcom. Временное решение: Если вы хотите использовать аппаратное ускорение EGL, доступное в видеодрайверах Broadcom в AxiomFX, при работе в Raspbian OS, выполните следующие команды: 1. |
Следующий список содержит важные исправления для версии 22.0.1.
ID проблемы | |
---|---|
JDK-8322557 |
Резюме: Неверное описание полученное с помощью @param/@return для ZoneRules#isDaylightSavings() Описание: Описание было исправлено следующим образом: «ZoneRules#getStandardOffset() имеет значение true, если указанный инстанс находится в режиме перехода на летнее и зимнее время, в противном случае — false». |
JDK-8324353 |
Резюме: KEM.getInstance() должен проверять, подписан ли сторонний поставщик безопасности. Описание: При создании экземпляра реализации (класса) алгоритма KEM стороннего поставщика безопасности платформа определит базу кода поставщика (файл JAR) и проверит его подпись. Таким образом, JCA аутентифицирует провайдера и гарантирует, что к JCA могут быть подключены только провайдеры, подписанные доверенным лицом. Это согласуется с другими классами обслуживания JCE, такими как Cipher, Mac, KeyAgreement и другими. |
JDK-8324366 |
Резюме: Уточнение системных свойств, связанных с локалью Описание: Расширено описание следующих системных свойств: user.language, user.script, user.country (раньше было user.region, все еще существует для совместимости), user.variant, user.extensions. |
JDK-8324371 |
Резюме: На странице описания свойств системы отсутствуют некоторые свойства Описание: Страница https://docs.oracle.com/en/java/javase/21/docs/api/system-properties.html была обновлена и теперь включает все системные свойства, такие как user.language, user.country, user.variant и другие. |
JDK-8324383 |
Резюме: SegmentAllocator:allocateFrom(ValueLayout, MemorySegment,ValueLayout,long,long) несоответствие спецификации в определенном сценарии Описание: Описание было исправлено, чтобы соответствовать поведению SegmentAllocator:allocateFrom(ValueLayout,MemorySegment,ValueLayout,long,long). |
JDK-8324407 |
Резюме: Добавление текста про обнуление памяти в Arena::allocate Описание: Был добавлен следующий текст: 'Сегменты памяти выделенные с помощью {@linkplain #allocate(long, long) allocated}, инициализируются с нулевым значением. |
JDK-8325605 |
Резюме: Регрессия UTF-16 в строках с циклическим обменом после JDK-8311906 Описание: 'java.nio.files.Files.readString`, может возвращать неверные строки при декодировании с использованием кодировки, отличной от US-ASCII, ISO08859-1 или UTF-8. См. раздел Известные проблемы. |
JDK-8326323 |
Резюме: Тест «api/java_awt/interactive/SystemTrayTests.html» не проходит, поскольку иконка добавляется за пределами панели задач. Описание: При нажатии кнопки «Добавить значок в трей» иконка теперь добавляется в системный трей. |
JDK-8326357 |
Резюме: Добавление корневых сертификатов Certainly R1 and E1 Описание: Корневые сертификаты Certainly Root R1 добавлены в хранилище доверенных сертификатов cacerts. |
JDK-8326830 |
Резюме: Включить TrimNativeHeapInterval Описание: TrimNativeHeapInterval теперь позволяет JVM периодически обрезать собственную выделенную память. Эта опция доступна только в Linux с glibc. |
Следующий список содержит дефекты, исправленные в JDK версии 22.0.1.
ID проблемы | Резюме |
---|---|
JDK-8314164 |
java/net/HttpURLConnection/HttpURLConnectionExpectContinueTest.java fails intermittently in timeout |
JDK-8314275 |
Incorrect stepping in switch |
JDK-8315708 |
Enhance HTTP/2 client usage |
JDK-8317299 |
safepoint scalarization doesn’t keep track of the depth of the JVM state |
JDK-8317804 |
com/sun/jdi/JdwpAllowTest.java fails on Alpine 3.17 / 3.18 |
JDK-8318158 |
RISC-V: implement roundD/roundF intrinsics |
JDK-8318340 |
Improve RSA key implementations |
JDK-8318603 |
Parallelize sun/java2d/marlin/ClipShapeTest.java |
JDK-8318696 |
Do not use LFS64 symbols on Linux |
JDK-8319382 |
com/sun/jdi/JdwpAllowTest.java shows failures on AIX if prefixLen of mask is larger than 32 in IPv6 case |
JDK-8319851 |
Improve exception logging |
JDK-8320890 |
[AIX] Find a better way to mimic dl handle equality |
JDK-8321151 |
JDK-8294427 breaks Windows L&F on all older Windows versions |
JDK-8321374 |
Add a configure option to explicitly set CompanyName property in VersionInfo resource for Windows exe/dll |
JDK-8321408 |
Add Certainly roots R1 and E1 |
JDK-8321480 |
ISO 4217 Amendment 176 Update |
JDK-8321489 |
Update LCMS to 2.16 |
JDK-8321815 |
Shenandoah: gc state should be synchronized to java threads only once per safepoint |
JDK-8321972 |
test runtime/Unsafe/InternalErrorTest.java timeout on linux-riscv64 platform |
JDK-8322092 |
Bump version numbers for 22.0.1 |
JDK-8322098 |
os::Linux::print_system_memory_info enhance the THP output with /sys/kernel/mm/transparent_hugepage/hpage_pmd_size |
JDK-8322122 |
Enhance generation of addresses |
JDK-8322159 |
ThisEscapeAnalyzer crashes for erroneous code |
JDK-8322163 |
runtime/Unsafe/InternalErrorTest.java fails on Alpine after JDK-8320886 |
JDK-8322417 |
Console read line with zero out should zero out when throwing exception |
JDK-8322725 |
(tz) Update Timezone Data to 2023d |
JDK-8322772 |
Clean up code after JDK-8322417 |
JDK-8322783 |
prioritize /etc/os-release over /etc/SuSE-release in hs_err/info output |
JDK-8322790 |
RISC-V: Tune costs for shuffles with no conversion |
JDK-8322945 |
Problemlist runtime/CompressedOops/CompressedClassPointers.java on AIX |
JDK-8323021 |
Shenandoah: Encountered reference count always attributed to first worker thread |
JDK-8323065 |
Unneccesary CodeBlob lookup in CompiledIC::internal_set_ic_destination |
JDK-8323086 |
Shenandoah: Heap could be corrupted by oom during evacuation |
JDK-8323154 |
C2: assert(cmp != nullptr && cmp→Opcode() == Op_Cmp(bt)) failed: no exit test |
JDK-8323170 |
j2dbench is using outdated javac source/target to be able to build by itself |
JDK-8323210 |
Update the usage of cmsFLAGS_COPY_ALPHA |
JDK-8323331 |
fix typo hpage_pdm_size |
JDK-8323428 |
Shenandoah: Unused memory in regions compacted during a full GC should be mangled |
JDK-8323515 |
Create test alias "all" for all test roots |
JDK-8323637 |
Capture hotspot replay files in GHA |
JDK-8323657 |
Compilation of snippet results in VerifyError at runtime with --release 9 (and above) |
JDK-8323664 |
java/awt/font/JNICheck/FreeTypeScalerJNICheck.java still fails with JNI warning on some Windows configurations |
JDK-8323675 |
Race in jdk.javadoc-gendata |
JDK-8323964 |
runtime/Thread/ThreadCountLimit.java fails intermittently on AIX |
JDK-8324041 |
ModuleOption.java failed with update release versioning scheme |
JDK-8324050 |
Issue store-store barrier after re-materializing objects during deoptimization |
JDK-8324280 |
RISC-V: Incorrect implementation in VM_Version::parse_satp_mode |
JDK-8324347 |
Enable "maybe-uninitialized" warning for FreeType 2.13.1 |
JDK-8324598 |
use mem_unit when working with sysinfo memory and swap related information |
JDK-8324637 |
[aix] Implement support for reporting swap space in jdk.management |
JDK-8324647 |
Invalid test group of lib-test after JDK-8323515 |
JDK-8324659 |
GHA: Generic jtreg errors are not reported |
JDK-8324753 |
[AIX] adjust os_posix after JDK-8318696 |
JDK-8324937 |
GHA: Avoid multiple test suites per job |
JDK-8325074 |
ZGC fails assert(index == 0 || is_power_of_2(index)) failed: Incorrect load shift: 11 |
JDK-8325150 |
(tz) Update Timezone Data to 2024a |
JDK-8325203 |
System.exit(0) kills the launched 3rd party application |
JDK-8325213 |
Flags introduced by configure script are not passed to ADLC build |
JDK-8325326 |
[PPC64] Don’t relocate in case of allocation failure |
JDK-8325470 |
[AIX] use fclose after fopen in read_psinfo |
JDK-8325496 |
Make TrimNativeHeapInterval a product switch |
JDK-8325590 |
Regression in round-tripping UTF-16 strings after JDK-8311906 |
JDK-8325672 |
C2: allocate PhaseIdealLoop::_loop_or_ctrl from C→comp_arena() |
JDK-8325876 |
crashes in docker container tests on Linuxppc64le Power8 machines |
JDK-8326000 |
Remove obsolete comments for class sun.security.ssl.SunJSSE |
JDK-8326101 |
[PPC64] Need to bailout cleanly if creation of stubs fails when code cache is out of space |
JDK-8326360 |
Update the Zlib version in open/src/java.base/share/legal/zlib.md to 1.3 |
JDK-8326638 |
Crash in PhaseIdealLoop::remix_address_expressions due to unexpected Region instead of Loop |
Следующий список содержит дефекты, исправленные в JFX версии 22.0.1.
ID проблемы | Резюме |
---|---|
JDK-8304008 |
Update README.md and CONTRIBUTING.md for jfx update repos |
JDK-8311492 |
FontSmoothingType LCD produces wrong color when transparency is used |
JDK-8313032 |
Enhanced handling of Glass |
JDK-8313040 |
Enhanced Font handling |
JDK-8313064 |
General enhancements of image handling |
JDK-8313072 |
Enhanced handling of Fonts |
JDK-8314147 |
Updated the PhongMaterial documentation |
JDK-8318614 |
Update WebKit to 617.1 |
JDK-8318624 |
API docs specify incorrect default value for nodeOrientation property |
JDK-8320441 |
Additonal fix for JDK-8313032 |
JDK-8322236 |
Build failure after JDK-8313064 |
JDK-8322703 |
Intermittent crash in WebView in a JFXPanel from IME calls on macOS |
JDK-8323555 |
Change JavaFX release version to 22.0.1 in jfx22u |
JDK-8323879 |
constructor Path(Path) which takes another Path object fail to draw on canvas html |
JDK-8323880 |
Caret rendered at wrong position in case of a click event on RTL text |
JDK-8324233 |
Update JPEG Image Decoding Software to 9f |
JDK-8324326 |
Update ICU4C to 74.2 |
JDK-8324337 |
Cherry-pick WebKit 617.1 stabilization fixes |
JDK-8325154 |
resizeColumnToFitContent is slower than it needs to be |
JDK-8325258 |
Additional WebKit 617.1 fixes from WebKitGTK 2.42.5 |
JDK-8325550 |
Grammatical error in AnchorPane.setLeftAnchor (and other setters) javadoc |
JDK-8325873 |
Update JDK_DOCS property to point to JDK 21 docs |
JDK-8326989 |
Text selection issues on WebView after WebKit 617.1 |
JDK-8327177 |
macOS: wrong GlobalRef deleted in GlassMenu |
JDK-8327979 |
Change JavaFX release version to 22.0.2 in jfx22u |
JDK-8328136 |
Create release notes for JavaFX 22 |
JDK-8328749 |
Remove unused imports in javafx.web |
JDK-8328752 |
Fix missing @Overrides in javafx.web |