
Данный релиз соответствует OpenJDK 15.0.2+7, номер версии Axiom JDK - 15.
Axiom является сертифицированным Java SE 15-совместимым дистрибутивом OpenJDK 15, который работает на серверах (Linux x86_64, Linux ARM64, Solaris SPARC, Solaris x64, Windows 64), настольных компьютерах (Windows 64, Windows 32, Mac, Linux x86_64) и встроенных устройствах (Linux ARM64, Linux ARMv7, включая Raspberry Pi 2 & 3 (ARMv6 hardfloat). Axiom JDK имеет следующие дополнения:
Пожалуйста, прочитайте примечания к релизу Oracle JDK 15.0.2 для получения дополнительной информации о функционале JDK 15. В этом документе описываются особенности дистрибутива Axiom по сравнению с дистрибутивом Oracle JDK 15.
Axiom поддерживается в следующих ОС:
Также известно, Axiom JDK работает с некоторыми другими дистрибутивами Linux и версиями Windows.
Примечание: Минимальная поддерживаемая версия ядра Linux - 2.6.18, версия GLIBC - 2.6. AxiomFX работает на всех поддерживаемых версиях Ubuntu, семействе Red Hat Linux начиная с версии 7.x и SUSE с бэкэндом GTK2.
Axiom is tested and certified on Raspberry Pi 2, 3 and 4 running the following OSes:
It is also known to work with Debian (armhf) and Ubuntu (armhf).
Axiom JDK 15 распространяется в виде .msi, .dmg, .deb, .rpm, .zip и .tar.gz. Пожалуйста, выберите формат, который наиболее подходит для ваших целей.
Axiom 15 содержит весь функционал, поддерживаемый OpenJDK 15.
С появлением Jigsaw в JDK 9 и минимальной виртуальной машины (Minimal VM) теперь можно создать среду исполнения, достаточную для запуска приложения и в то же время оптимизированную по размеру. Чтобы создать среду выполнения только с минимальной виртуальной машиной, добавьте опцию - vm=minimal jlink.
По умолчанию Axiom использует серверную виртуальную машину (Server VM). Серверная виртуальная машина и клиентская виртуальная машина могут быть включены с помощью параметров командной строки -server и -client соответственно. В случае, если требуется минимальный размер среды исполенения, можно использовать Minimal VM, которая оптимизирована по размеру. Minimal VM имеет только компилятор C1 JIT, Serial GC и не имеет функционала Serviceability. Minimal VM можно включить параметром командной строки -minimal.
Axiom JDK 15 поставляется в комплекте со сборкой платформы AxiomFX, основанной на OpenJFX. В следующих таблицах перечислены состояния модулей Java FX дистрибутива Axiom.
* - за исключением сборок для armhf.
Для armhf работают следующие графические конвейеры: EGL, SW (direct framebuffer) и GTK. По умолчанию Axiom пытается использовать конвейер EGL, который требует наличия библиотек EGL. Если они не найдены, реализация возвращается к программному обеспечению.
Используйте следующие параметры командной строки, чтобы указать конвейер рендеринга:
* Не поддерживается на Raspberry Pi 4.
Дополнительная информация доступна на следующей wiki странице.
Axiom JDK 15 для 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
BellSoft Axiom содержит исправления уязвимостей Oracle Java SE. Пожалуйста, обратитесь к документации Oracle для получения деталей о проблемах, исправленных в данной версии.
| Issue | Description |
|---|---|
| 8197981 | Missing return statement in __sync_val_compare_and_swap_8 |
| 8232114 | JVM crashed at imjpapi.dll in native code |
| 8239105 | Add exception for expiring Digicert root certificates to VerifyCACerts test |
| 8247251 | Assert ‘(_pcs_length == 0 || last_pc()->pc_offset() < pc_offset) failed: must specify a new, larger pc offset’ failure |
| 8247619 | Improve Direct Buffering of Characters |
| 8247741 | Test test/hotspot/jtreg/runtime/7162488/TestUnrecognizedVmOption.java fails when -XX:+IgnoreUnrecognizedVMOptions is set |
| 8248411 | [aarch64] Insufficient error handling when CodeBuffer is exhausted |
| 8248596 | [TESTBUG] compiler/loopopts/PartialPeelingUnswitch.java times out with Graal enabled |
| 8248667 | Need support for building native libraries located in the test/lib directory |
| 8249165 | Remove unneeded nops introduced by 8234160 changes |
| 8249176 | Update GlobalSignR6CA test certificates |
| 8249183 | JVM crash in “AwtFrame::WmSize” method |
| 8249192 | MonitorInfo stores raw oops across safepoints |
| 8249217 | Unexpected StackOverflowError in “process reaper” thread still happens |
| 8249781 | AArch64: AOT compiled code crashes if C2 allocates r27 |
| 8250257 | Bump release strings for JDK 15.0.2 |
| 8250928 | JFR: Improve hash algorithm for stack traces |
| 8251397 | NPE on ClassValue.ClassValueMap.cacheArray |
| 8251458 | Parse::do_lookupswitch fails with “assert(_cnt >= 0) failed” |
| 8252120 | compiler/oracle/TestCompileCommand.java misspells “occured” |
| 8252292 | 8240795 may cause anti-dependence to be missed |
| 8252359 | HotSpot Not Identifying it is Running in a Container |
| 8252367 | Undo JDK-8245000: Windows GDI functions don’t support large pages |
| 8252368 | Undo JDK-8245002: Windows GDI functions don’t support NUMA interleaving |
| 8252470 | java/awt/dnd/DisposeFrameOnDragCrash/DisposeFrameOnDragTest.java fails on Windows |
| 8252660 | Shenandoah: support manageable SoftMaxHeapSize option |
| 8252754 | Hash code calculation of JfrStackTrace is inconsistent |
| 8253191 | C2: Masked byte comparisons with large masks produce wrong result on x86 |
| 8253222 | Shenandoah: unused AlwaysTrueClosure after JDK-8246591 |
| 8253224 | Shenandoah: ShenandoahStrDedupQueue destructor calls virtual num_queues() |
| 8253226 | Shenandoah: remove unimplemented ShenandoahStrDedupQueue::verify |
| 8253284 | Zero OrderAccess barrier mappings are incorrect |
| 8253375 | OSX build fails with Xcode 12.0 (12A7209) |
| 8253566 | clazz.isAssignableFrom will return false for interface implementors |
| 8253714 | [cgroups v2] Soft memory limit incorrectly using memory.high |
| 8253727 | [cgroups v2] Memory and swap limits reported incorrectly |
| 8253756 | C2 CompilerThread0 crash in Node::add_req(Node*) |
| 8253778 | ShenandoahSafepoint::is_at_shenandoah_safepoint should not access VMThread state from other threads |
| 8253791 | Issue with useAppleColor check in CSystemColors.m |
| 8253960 | Memory leak in Java_java_lang_ClassLoader_defineClass0() |
| 8254081 | java/security/cert/PolicyNode/GetPolicyQualifiers.java fails due to an expired certificate |
| 8254144 | Non-x86 Zero builds fail with return-type warning in os_linux_zero.cpp |
| 8254166 | Zero: return-type warning in zeroInterpreter_zero.cpp |
| 8254177 | (tz) Upgrade time-zone data to tzdata2020b |
| 8254319 | Shenandoah: Interpreter native-LRB needs to activate during HAS_FORWARDED |
| 8254320 | Shenandoah: C2 native LRB should activate for non-cset objects |
| 8254560 | Shenandoah: Concurrent Strong Roots logging is incorrect |
| 8254790 | SIGSEGV in string_indexof_char and stringL_indexof_char intrinsics |
| 8254854 | [cgroups v1] Metric limits not properly detected on some join controller combinations |
| 8254982 | (tz) Upgrade time-zone data to tzdata2020c |
| 8255065 | Zero: accessor_entry misses the IRIW case |
| 8255067 | Restore Copyright line in file modified by 8253191 |
| 8255226 | (tz) Upgrade time-zone data to tzdata2020d |
| 8255599 | Change jdk 15.0.2 milestone to fcs for build b04 |
| 8255603 | Memory/Performance regression after JDK-8210985 |
| 8256051 | nmethod_entry_barrier stub miscalculates xmm spill size on x86_32 |
| 8256427 | Test com/sun/jndi/dns/ConfigTests/PortUnreachable.java does not work on AIX |
| 8256618 | Zero: Linux x86_32 build still fails |
| 8257181 | s390x builds are very noisy with gc-sections messages |
| 8257641 | Shenandoah: Query is_at_shenandoah_safepoint() from control thread should return false |
| 8257701 | Shenandoah: objArrayKlass metadata is not marked with chunked arrays |
| 8257897 | Fix webkit build for XCode 12 |