Данный релиз соответствует OpenJDK 12.0.2+12, номер версии Axiom JDK - 12.0.2.
Axiom является сертифицированным Java SE 12-совместимым дистрибутивом OpenJDK 11, который работает на серверах (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 12.0.2 для получения дополнительной информации о функционале JDK 12. В этом документе описываются особенности дистрибутива Axiom по сравнению с дистрибутивом Oracle JDK 12.
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 running the following OSes:
It is also known to work with Debian (armhf) and Ubuntu (armhf).
Axiom JDK 12 распространяется в виде .msi, .dmg, .deb, .rpm, .zip и .tar.gz. Пожалуйста, выберите формат, который наиболее подходит для ваших целей.
Axiom 12 содержит весь функционал, поддерживаемый OpenJDK 12.
С появлением 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 12 поставляется в комплекте со сборкой платформы AxiomFX, основанной на OpenJFX. В следующих таблицах перечислены состояния модулей Java FX дистрибутива Axiom.
* - за исключением сборок для armhf.
Для armhf работают следующие графические конвейеры: EGL, SW (direct framebuffer) и GTK. По умолчанию Axiom пытается использовать конвейер EGL, который требует наличия библиотек EGL. Если они не найдены, реализация возвращается к программному обеспечению.
Используйте следующие параметры командной строки, чтобы указать конвейер рендеринга:
Дополнительная информация доступна на следующей wiki странице.
Axiom JDK 11 для 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 |
---|---|
8170494 | JNI exception pending in PlainDatagramSocketImpl.c |
8188133 | C2: Static field accesses in clinit can trigger deoptimizations |
8205432 | Replace the placeholder Japanese era name |
8209901 | Canonical file handling |
8210782 | Upgrade HarfBuzz to the latest 2.3.1 |
8211936 | Better String parsing |
8212328 | Exceptional throw cases |
8213431 | Improve file protocol handling |
8213432 | Better copies of CopiesList |
8214235 | arm32: assertion in collectedHeap.cpp: attempt to clean empty remainder |
8215367 | Better Collection of References |
8215472 | (zipfs) Cleanups in implementation classes of jdk.zipfs and tests |
8215982 | (tz) Upgrade time-zone data to tzdata2018i |
8216381 | More limited privilege usage |
8217563 | Improve realm maintenance |
8217647 | JFR: recordings on 32-bit systems unreadable |
8217737 | Change the milestone to ea for jdk-12.0.2+1 build |
8217737 | Change the release version from 12.0.1 to 12.0.2 |
8217879 | hs_err should print more instructions in hex dump |
8218152 | [javac] fails and exits with no error if a bad annotation processor provided |
8218453 | More dynamic RMI interactions |
8218469 | JSlider display issue with slider for GTKLookAndFeel |
8218473 | JOptionPane display issue with GTKLookAndFeel |
8218479 | JTextPane display issue with GTKLookAndFeel |
8218781 | Localized names for Japanese era Reiwa in COMPAT provider |
8218863 | Better endpoint checks |
8218873 | Improve JSSE endpoint checking |
8218876 | Improve PNG support options |
8219448 | split-if update_uses accesses stale idom data |
8219775 | Certificate validation improvements |
8220166 | Performance regression in deserialization (4-6% in SPECjbb) |
8220495 | Update GIFlib library to the 5.1.8 |
8220517 | Enhanced GIF support |
8220625 | tools/javac/classreader/8171132/BadConstantValue.java failed with “did not see expected error” |
8221345 | Better Poly1305 support |
8221437 | assert(java_lang_invoke_ResolvedMethodName::vmtarget(resolved_method()) == m()) failed: Should not change after link resolution |
8221518 | Normalize normalization |
8221530 | Caller sensitive methods not handling caller = null when invoked by JNI code with no java frames on stack |
8221639 | [i386] expand_exec_shield_cs_limit workaround is undefined code after JDK-8199717 |
8221880 | Better customization for Windows RC properties FileDescription and ProductName |
8221924 | get(null) on single-entry unmodifiable Map returns null instead of throwing NPE |
8222027 | java/util/logging/LogManager/TestLoggerNames.java generates intermittent ClassCastException |
8222078 | test/jdk/java/lang/reflect/exeCallerAccessTest/exeCallerAccessTest.c build fails after 8221530 |
8222082 | Build of test/jdk/java/lang/reflect/exeCallerAccessTest/exeCallerAccessTest.c still failing on Windows |
8222086 | CodeCache::UnloadingScope needs to preserve and restore previous IsUnloadingBehavior |
8222111 | exeCallerAccessTest.c fails to build: control reaches end of non-void function |
8222136 | Remove two Comodo root CA certificates that are expiring |
8222137 | Remove T-Systems root CA certificate |
8222262 | change milestone to fcs for jdk 12.0.2 build 2 on jdk12.0.2 repos |
8222397 | x86_32 tests with UseSHA1Intrinsics SEGV due to garbled registers |
8222403 | Shenandoah: Remove ShenandoahAlwaysTrueClosure, use AlwaysTrueClosure instead |
8222410 | java/nio/file/attribute/BasicFileAttributeView/UnixSocketFile hangs when “nc” does not accept “-U” |
8222425 | Shenandoah: Move commonly used closures to separate files |
8222522 | Add configure options for Mac Bundle creation |
8222532 | (zipfs) Performance regression when writing ZipFileSystem entries in parallel |
8222678 | Improve TLS negotiation |
8222838 | Shenandoah: SEGV on accessing cset bitmap for NULL ptr |
8222843 | Print Shenandoah cset map addresses in hs_err |
8222930 | ConcurrentSkipListMap.clone() shares size variable between original and clone |
8223003 | SunMSCAPI keys are not cleaned up |
8223427 | [TESTBUG] Disable JTReg Shenandoah tests when Graal is enabled |
8223437 | Backout JDK-8219974 Restore static callsite resolution for the current class |
8223446 | Shenandoah breaks alignment with some HumongousThreshold values |
8223447 | Stabilize gc/shenandoah/TestStringDedupStress test |
8223472 | volatile long field corruption on x86_32 |
8223499 | Remove two DocuSign root certificates that are expiring |
8223555 | Cleanups in cacerts tests |
8223570 | Shenandoah needs to acquire lock before CLDG::clear_claimed_marks |
8223597 | jdk/nio/zipfs/ZipFSTester.java RuntimeException: CHECK_FAILED! (getAttribute.crc |
8223651 | Build fails with –with-jvm-features=-jfr and –disable-precompiled-headers |
8223759 | Shenandoah should allow arbitrarily low initial heap size |
8223762 | Shenandoah: overflows in calculations involving heap capacity |
8223767 | Shenandoah fails to build on Solaris x86_64 |
8223980 | Shenandoah: Refactor and fix ObjArrayChunkedTask verification |
8224907 | Backout JDK-8209901 from JDK 11u-cpu and 12u-cpu |
8227230 | Backout JDK-8215367 from update releases |