Примечания к релизу Axiom JDK 11.0.15+10

Данный релиз соответствует OpenJDK 11.0.15+10, номер версии Axiom JDK - 11

Axiom JDK 11.0.15+10

Axiom является сертифицированным Java SE 11-совместимым дистрибутивом 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 имеет следующие дополнения:

  • Версия для 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 11.
  • Версия для Linux ARMv7 содержит Device IO API, скомпилированный для Raspberry Pi.

Пожалуйста, прочитайте примечания к релизу Oracle JDK 11.0.15 для получения дополнительной информации о функционале JDK 11. В этом документе описываются особенности дистрибутива Axiom по сравнению с дистрибутивом Oracle JDK 11.

Поддерживаемые серверные и десктопные конфигурации

Axiom поддерживается в следующих ОС:

  • Ubuntu Linux 16.04, 18.04 (x86, x86_64, ARMv8)
  • Debian Linux 8, 9 (x86, x86_64, ARMv8)
  • Red Hat, Oracle Linux, CentOS 6.x, 7.x (x86, x86_64, ARMv8)
  • Alpine Linux 3.7+
  • SUSE Linux Enterprise 12, 15, tumbleweed (x86_64, ARMv8)
  • Apple macOS 10.11+
  • Solaris 11.1+ (SPARC, x64)
  • Microsoft Windows 2019, Windows 2016, Windows 2012 R2, Windows 10, Windows 8, Windows 7 (32 bit, 64 bit)

Также известно, 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 для следующих операционных систем:

  * Raspbian OS (armhf)   * OpenSUSE (armv8)

Также Axiom JDK работает на Debian (armhf) и Ubuntu (armhf).

Поставка Axiom JDK 11

Axiom JDK 11.0.15 распространяется в виде .msi, .dmg, .deb, .rpm, .zip и .tar.gz. Пожалуйста, выберите формат, который наиболее подходит для ваших целей.

Axiom 11 содержит весь функционал, поддерживаемый OpenJDK 11.

С появлением 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.

AxiomFX

Axiom JDK 11 поставляется в комплекте со сборкой платформы AxiomFX, основанной на OpenJFX. В следующих таблицах перечислены состояния модулей Java FX дистрибутива Axiom.

  • Java FX Graphics - поддерживается.
  • Java FX Controls - поддерживается.
  • Java FX Media - поддерживается*.
  • Java FX Webkit - поддерживается*.

* - за исключением сборок для armhf.

Для armhf работают следующие графические конвейеры: EGL, SW (direct framebuffer) и GTK. По умолчанию Axiom пытается использовать конвейер EGL, который требует наличия библиотек EGL. Если они не найдены, реализация возвращается к программному обеспечению.

Используйте следующие параметры командной строки, чтобы указать конвейер рендеринга:

  • -Dprism.order=sw - программный конвейер рендеринга.
  • -Dprism.order=es2 - EGL-конвейер и аппаратное ускорение.
  • -Djavafx.platform=gtk, если вы хотите запустить приложение AxiomFX, используя Axiom из X11.

Дополнительная информация доступна на следующей wiki странице.

Device IO API для Raspberry Pi

Axiom JDK 11 для armhf поставляется со встроенным модулем реализации API ввода-вывода (DIO) устройства OpenJDK. DIO предоставляет Java API для доступа к выводам Raspberry PI GPIO и для связи с периферийными устройствами:

  • Универсальный ввод / вывод (GPIO).
  • Межинтегральная шина (I2C), последовательный интерфейс (SPI).
  • Универсальный асинхронный приемник / передатчик (UART).

Дополнительная информация доступна на следующей wiki странице.

Известные особенности

AxiomFX и EGL на ОС Raspbian

С 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
8281089 JavaFX built with VS2019 and jlinked into JDK 11.x fails to start
8280489 Change JavaFX release version in jfx11u to 11.0.15
8278260 JavaFX shared libraries not stripped on Linux or macOS
8277457 AccessControlException: access denied (“java.net.NetPermission” “getCookieHandler”)
8265399 Update to Visual Studio 2019 version 16.9.3
8242544 CMD+ENTER key event crashes the application when invoked on dialog
8242505 Some WebKit tests might fail because Microsoft libraries are not loaded
8223377 JavaFX can crash due to loading the wrong native libraries if system libraries are installed
8203463 [Accessibility, Narrator] NPE in TableView
8197991 Selecting many items in a TableView is very slow
8282099 Cherry-pick WebKit 613.1 stabilization fixes (2)
8281711 Cherry-pick WebKit 613.1 stabilization fixes
8281459 WebKit 613.1 build broken on M1
8278980 Update WebKit to 613.1
8274221 More definite BER encodings
8272261 Improve JFR recording file processing
8272255 Completely handle MIDI files
8284920 Incorrect Token type causes XPath expression to return empty result
8284548 Unexpected StringIndexOutOfBoundsException can occur for invalid XPath expressions after JDK-8270504
8282397 createTempFile method of java.io.File is failing when called with suffix of spaces character
8282300 Throws NamingException instead of InvalidNameException after JDK-8278972
8281388 Change wrapping of EncryptedPrivateKeyInfo
8278972 Improve URL supports
8278805 Enhance BMP image loading
8278798 Improve supported intrinsic
8278449 Improve keychain support
8278356 Improve file creation
8277672 Better invocation handler handling
8277227 Better identification of OIDs
8275151 Improved Object Identification
8272594 Better record of recordings
8270504 Better Xpath expression handling
8269938 Enhance XML processing passes redux
8283778 11u GHA: Fix GCC 9 ubuntu package names
8283018 11u GHA: Update GCC 9 minor versions
8275082 Update XML Security for Java to 2.3.0
8282761 XPathFactoryImpl remove setProperty and getProperty methods
8283270 [11u] broken JRT_ENTRY_NO_ASYNC after Backport of JDK-8253795
8275703 System.loadLibrary fails on Big Sur for libraries hidden from filesystem
8277795 ldap connection timeout not honoured under contention
8276141 XPathFactory set/getProperty method
8255410 Add ChaCha20 and Poly1305 support to SunPKCS11 provider
8211333 AArch64: Fix another build failure after JDK-8211029
8279669 test/jdk/com/sun/jdi/TestScaffold.java uses wrong condition
8261107 ArrayIndexOutOfBoundsException in the ICC_Profile.getInstance(InputStream)
8282372 [11] build issue on MacOS/aarch64 12.2.1 using Xcode 13.1: call to ‘log2_intptr’ is ambiguous
8214004 Missing space between compiler thread name and task info in hs_err
8250750 JDK-8247515 fix for OSX pc_to_symbol() lookup fails with some symbols
8277488 Add expiry exception for Digicert (geotrustglobalca) expiring in May 2022
8247515 OSX pc_to_symbol() lookup does not work with core files
8254085 javax/swing/text/Caret/TestCaretPositionJTextPane.java failed with “RuntimeException: Wrong caret position”
8247272 SA ELF file support has never worked for 64-bit causing address to symbol name mapping to fail
8233986 ProblemList javax/swing/plaf/basic/BasicTextUI/8001470/bug8001470.java for windows-x64
8274524 SSLSocket.close() hangs if it is called during the ssl handshake
8255239 The timezone of the hs_err_pid log file is corrupted in Japanese locale
8272541 Incorrect overflow test in Toom-Cook branch of BigInteger multiplication
8254072 AArch64: Get rid of –disable-warnings-as-errors on Windows+ARM64 build
8262894 [macos_aarch64] SIGBUS in Assembler::ld_st2
8266889 [macosx-aarch64] Crash with SIGBUS in MarkActivationClosure::do_code_blob during vmTestbase/nsk/jvmti/…/bi04t002 test run
8241004 NMT tests fail on unaligned thread size with debug build
8253795 Implementation of JEP 391: macOS/AArch64 Port
8253816 Support macOS W^X
8253817 Support macOS Aarch64 ABI in Interpreter
8253818 Support macOS Aarch64 ABI for compiled wrappers
8253819 Implement os/cpu for macOS/AArch64
8253839 Update tests and JDK code for macOS/Aarch64
8254941 Implement Serviceability Agent for macOS/AArch64
8255776 Change build system for macOS/AArch64
8262903 [macos_aarch64] Thread::current() called on detached thread
8262896 [macos_aarch64] Crash in jni_fast_GetLongField
8280414 Memory leak in DefaultProxySelector
8280526 x86_32 Math.sqrt performance regression with -XX:UseSSE={0,1}
8279076 C2: Bad AD file when matching SqrtF with UseSSE=0
8281520 JFR: A wrong parameter is passed to the constructor of LeakKlassWriter
8281599 test/lib/jdk/test/lib/KnownOIDs.java is redundant since JDK-8268801
8190748 java/text/Format/DateFormat/DateFormatTest.java and NonGregorianFormatTest fail intermittently
8281061 [s390] JFR runs into assertions while validating interpreter frames
8280155 [PPC64, s390] frame size checks are not yet correct
8279924 [PPC64, s390] implement frame::is_interpreted_frame_valid checks
8261205 AssertionError: Cannot add metadata to an intersection type
8277992 Add fast jdk_svc subtests to jdk:tier3
8216969 ParseException thrown for certain months with russian locale
8278381 [GCC 11] Address::make_raw() does not initialize rspec
8264650 Cross-compilation to macos/aarch64
8280786 Build failure on Solaris after 8262392
8218546 Unable to connect to https://google.com using java.net.HttpClient
8281324 Bump update version for OpenJDK: jdk-11.0.14.1
8256321 Some “inactive” color profiles use the wrong profile class
8280999 array_bounds should be array-bounds after 8278507
8177814 jdk/editpad is not in jdk TEST.groups
8279702 [macosx] ignore xcodebuild warnings on M1
8280786 Build failure on Solaris after 8262392
8218546 Unable to connect to https://google.com using java.net.HttpClient
8278758 runtime/BootstrapMethod/BSMCalledTwice.java fails with release VMs after JDK-8262134
8279833 Loop optimization issue in String.encodeUTF8_UTF16
8273277 C2: Move conditional negation into rc_predicate
8253197 vmTestbase/nsk/jvmti/StopThread/stopthrd007/TestDescription.java fails with “ERROR: DebuggeeSleepingThread: ThreadDeath lost”
8236210 javac generates wrong annotation for fields generated from record components
8236505 Mark jdk/editpad/EditPadTest.java as @headful
8270874 JFrame paint artifacts when dragged from standard monitor to HiDPI monitor
8271202 C1: assert(false) failed: live_in set of first block must be empty
8277447 Hotspot C1 compiler crashes on Kotlin suspend fun with loop
8275610 C2: Object field load floats above its null check resulting in a segfault
8266421 Deadlock in Sound System
8274795 AArch64: avoid spilling and restoring r18 in macro assembler
8232533 G1 uses only a single thread for pretouching the java heap
8273933 [TESTBUG] Test must run without preallocated exceptions
8268542 serviceability/logging/TestFullNames.java tests only 1st test case
8251998 remove usage of PropertyResolvingWrapper in vmTestbase/jit/t
8273438 Enable parallelism in vmTestbase/metaspace/stressHierarchy tests
8273433 Enable parallelism in vmTestbase_nsk_sysdict tests
8273341 Update Siphash to version 1.0
8278871 [JVMCI] assert((uint)reason < 2* _trap_hist_limit) failed: oob
8275326 C2: assert(no_dead_loop) failed: dead loop detected
8251127 clean up FileInstaller $test.src $cwd in remaining vmTestbase_vm_compiler tests
8252005 narrow disabling of allowSmartActionArgs in vmTestbase
8279998 PPC64 debug builds fail with “untested: RangeCheckStub: predicate_failed_trap_id”
8193277 SimpleFileObject inconsistency between getName and getShortName
8225559 assertion error at TransTypes.visitApply
8220634 SymLinkArchiveTest should handle not being able to create symlinks
8214026 Canonicalized archive paths appearing in diagnostics
8251126 nsk.share.GoldChecker should read golden file from ${test.src}
8237798 rewrite vmTestbase/jit/tiered from shell to java
8262134 compiler/uncommontrap/TestDeoptOOM.java failed with “guarantee(false) failed: wrong number of expression stack elements during deopt”
8210194 [TESTBUG] jvmti_FollowRefObjects.cpp missing initializer for member _jvmtiHeapCallbacks::heap_reference_callback
8277441 CompileQueue::add fails with assert(_last->next() == __null) failed: not last
8273704 DrawStringWithInfiniteXform.java failed : drawString with InfiniteXform transform takes long time
8277328 jdk/jshell/CommandCompletionTest.java failures on Windows
8251132 make main classes public in vmTestbase/jit tests
8274465 Fix javax/swing/text/ParagraphView/6364882/bug6364882.java failures
8273634 [TEST_BUG] Improve javax/swing/text/ParagraphView/6364882/bug6364882.java
8249019 clean up FileInstaller $test.src $cwd in vmTestbase_vm_compiler tests
8274338 com/sun/jdi/RedefineCrossEvent.java failed “assert(m != __null) failed: NULL mirror”
8279300 [arm32] SIGILL when running GetObjectSizeIntrinsicsTest
8273682 Upgrade Jline to 3.20.0
8256154 Some TestNG tests require default constructors
8237787 rewrite vmTestbase/vm/compiler/CodeCacheInfo* from shell to java
8223142 Clean-up WS and CB.
8278384 Bytecodes::result_type() for arraylength returns T_VOID instead of T_INT
8278172 java/nio/channels/FileChannel/BlockDeviceSize.java should only run on Linux
8279077 JFR crashes on Linux ppc due to missing crash protector in signal handler
8279225 [arm32] C1 longs comparison operation destroys argument registers
8276623 JDK-8275650 accidentally pushed “out” file
8279379 GHA: Print tests that are in error
8275536 Add test to check that File::lastModified returns same time stamp as Files.getLastModifiedTime
8274658 ISO 4217 Amendment 170 Update
8239502 [TEST_BUG] Test javax/swing/text/FlowView/6318524/bug6318524.java never fails
8277342 vmTestbase/nsk/stress/strace/strace004.java fails with SIGSEGV in InstanceKlass::jni_id_for
8275650 Problemlist java/io/File/createTempFile/SpecialTempFile.java for Windows 11
8268014 Build failure on SUSE Linux Enterprise Server 11.4 (s390x) due to ‘SYS_get_mempolicy’ was not declared
8241423 NUMA APIs fail to work in dockers due to dependent syscalls are disabled by default
8065704 Set LC_ALL=C for all relevant commands in the build system
8254827 JVMCI: Enable it for Windows+AArch64
8276314 [JVMCI] check alignment of call displacement during code installation
8265150 AsyncGetCallTrace crashes on ResourceMark
8276177 nsk/jvmti/RedefineClasses/StressRedefineWithoutBytecodeCorruption failed with “assert(def_ik->is_being_redefined()) failed: should be being redefined to get here”
8273638 javax/swing/JTable/4235420/bug4235420.java fails in GTK L&F
8258554 javax/swing/JTable/4235420/bug4235420.java fails in GTK L&F
8277385 Zero: Enable CompactStrings support
8278116 runtime/modules/LoadUnloadModuleStress.java has duplicate -Xmx
8278115 gc/stress/gclocker/TestGCLockerWithSerial.java has duplicate -Xmx
8274736 Concurrent read/close of SSLSockets causes SSLSessions to be invalidated unnecessarily
8278309 [windows] use of uninitialized OSThread::_state
8202142 jfr/event/io/TestInstrumentation is unstable
8207793 [TESTBUG] runtime/Metaspace/FragmentMetaspace.java fails: heap needs to be increased
8211170 AArch64: Warnings in C1 and template interpreter
8273575 memory leak in appendBootClassPath(), paths must be deallocated
8266187 Memory leak in appendBootClassPath()
8240904 Screen flashes on test failures when running tests from make
8234930 Use MAP_JIT when allocating pages for code cache on macOS
8275811 Incorrect instance to dispose
8186780 clang fastdebug assertion failure in os_linux_x86:os::verify_stack_alignment()
8266171 -Warray-bounds happens in imageioJPEG.c
8266170 -Wnonnull happens in classLoaderData.inline.hpp
8207011 Remove uses of the register storage class specifier
8266172 -Wstringop-overflow happens in vmError.cpp
8274714 Incorrect verifier protected access error message
8273514 java/util/DoubleStreamSums/CompensatedSums.java failure
8214761 Bug in parallel Kahan summation implementation
8272473 Parsing epoch seconds at a DST transition with a non-UTC parser is wrong
8255035 Update BCEL to Version 6.5.0
8257769 Cipher.getParameters() throws NPE for ChaCha20-Poly1305
8233827 Enable screenshots in the enhanced failure handler on Linux/macOS
8210236 Prepare ciReceiverTypeData::translate_receiver_data_from for concurrent class unloading
8273366 [testbug] javax/swing/UIDefaults/6302464/bug6302464.java fails on macOS12
8199079 Test javax/swing/UIDefaults/6302464/bug6302464.java is unstable
8256373 [Windows/HiDPI] The Frame#setBounds does not work in a minimized state
8274523 java/lang/management/MemoryMXBean/MemoryTest.java test should handle Shenandoah
8208074 [TESTBUG] vmTestbase/nsk/jvmti/RedefineClasses/StressRedefineWithoutBytecodeCorruption/TestDescription.java failed with NullPointerException
8266168 -Wmaybe-uninitialized happens in check_code.c
8266174 -Wmisleading-indentation happens in libmlib_image sources
8251558 J2DBench should support shaped and translucent windows
8254940 AArch64: Cleanup non-product thread members
8266173 -Wmaybe-uninitialized happens in jni_util.c
8263185 Mallinfo deprecated in glibc 2.33
8257467 [TESTBUG] -Wdeprecated-declarations is reported at sigset() in exesigtest.c
8266176 -Wmaybe-uninitialized happens in libArrayIndexOutOfBoundsExceptionTest.c
8274265 Suspicious string concatenation in logTestUtils.inline.hpp
8222825 ARM32 SIGILL issue on single core CPU (not supported PLDW instruction)
8276105 C2: Conv(D|F)2(I|L)Nodes::Ideal should handle rounding correctly
8268882 C2: assert(n->outcnt() != 0 || C->top() == n || n->is_Proj()) failed: No dead instructions after post-alloc
8272345 macos doesn’t check os::set_boot_path() result
8277796 Bump update version for OpenJDK: jdk-11.0.15
Обратно на страницу загрузки
Команда Axiom JDK roman.karpov@axiomjdk.ru Команда Axiom JDK logo Axiom Committed to Freedom 199 Obvodnogo Kanala Emb. 190020 St. Petersburg RU +7 812-336-35-67 Команда Axiom JDK 199 Obvodnogo Kanala Emb. 190020 St. Petersburg RU +7 812-336-35-67