Данный релиз соответствует OpenJDK 17.0.5+8, номер версии Axiom JDK - 17
Axiom является сертифицированным Java SE 17-совместимым дистрибутивом OpenJDK 17, который работает на серверах (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 17.0.5 для получения дополнительной информации о функционале JDK 17. В этом документе описываются особенности дистрибутива Axiom по сравнению с дистрибутивом Oracle JDK 17.
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 17 распространяется в виде .msi, .dmg, .deb, .rpm, .zip и .tar.gz. Пожалуйста, выберите формат, который наиболее подходит для ваших целей.
Axiom 17 содержит весь функционал, поддерживаемый OpenJDK 17.
С появлением Jigsaw в JDK 9 и минимальной виртуальной машины (Minimal VM) теперь можно создать среду исполнения, достаточную для запуска приложения и в то же время оптимизированную по размеру. Чтобы создать среду выполнения только с минимальной виртуальной машиной, добавьте опцию - vm=minimal jlink.
Axiom JDK продолжает поддерживать AOT и Graal JIT. Поскольку в сборках OpenJDK 17 эти экспериментальные функции признаны устаревшими, для безошибочной компиляции нативных образов рекомендуется использовать Axiom Native Image Kit.
По умолчанию Axiom использует серверную виртуальную машину (Server VM). Серверная виртуальная машина и клиентская виртуальная машина могут быть включены с помощью параметров командной строки -server и -client соответственно. В случае, если требуется минимальный размер среды исполенения, можно использовать Minimal VM, которая оптимизирована по размеру. Minimal VM имеет только компилятор C1 JIT, Serial GC и не имеет функционала Serviceability. Minimal VM можно включить параметром командной строки -minimal.
Axiom JDK 17 поставляется в комплекте со сборкой платформы AxiomFX, основанной на OpenJFX. В следующих таблицах перечислены состояния модулей Java FX дистрибутива Axiom.
Для armhf работают следующие графические конвейеры: EGL, SW (direct framebuffer) и GTK. По умолчанию Axiom пытается использовать конвейер EGL, который требует наличия библиотек EGL. Если они не найдены, реализация возвращается к программному обеспечению.
Используйте следующие параметры командной строки, чтобы указать конвейер рендеринга:
* Не поддерживается на Raspberry Pi 4.
Дополнительная информация доступна на следующей wiki странице.
Axiom JDK 17 для 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 |
---|---|
8292609 | Cherry-pick WebKit 614.1 stabilization fixes |
8291630 | Update attribution in webkit.md file |
8286774 | Replace openjdk.java.net with openjdk.org |
8288450 | Update attribution in gstreamer.md file 8288449: Update attribution in glib.md file |
8291051 | Update boot JDK to 17.0.4 |
8285881 | Update WebKit to 614.1 |
8284676 | TreeTableView loses sort ordering when applied on empty table |
8289952 | Visual Studio libs msvcp140_1.dll and msvcp140_2.dll missing from build |
8289587 | IllegalArgumentException: Color.rgb’s red parameter (-16776961) expects color values 0-255 |
8088420 | JavaFX WebView memory leak via EventListener |
8283786 | Update to Visual Studio 2022 version 17.1.0 on Windows |
8291038 | Change JavaFX release version to 17.0.5 in jfx17u |
8286918 | Better HttpServer service |
8286910 | Improve JNDI lookups |
8286519 | Better memory handling |
8295056 | [17u] Remove designator DEFAULT_PROMOTED_VERSION_PRE=ea for release 17.0.5 |
8289366 | Improve HTTP/2 client usage |
8288508 | Enhance ECDSA usage |
8287446 | Enhance icon presentations |
8286526 | Improve NTLM support |
8286511 | Improve macro allocation |
8286077 | Wider MultiByte conversions |
8285662 | Better permission resolution |
8282252 | Improve BigInteger/Decimal validation |
8292579 | (tz) Update Timezone Data to 2022c |
8275887 | jarsigner prints invalid digest/signature algorithm warnings if keysize is weak/disabled |
8028265 | Add legacy tz tests to OpenJDK |
8290456 | remove os::print_statistics() |
8288985 | P11TlsKeyMaterialGenerator should work with ChaCha20-Poly1305 |
8287463 | JFR: Disable TestDevNull.java on Windows |
8289695 | [TESTBUG] TestMemoryAwareness.java fails on cgroups v2 and crun |
8227651 | Tests fail with SSLProtocolException: Input record too big |
8212096 | javax/net/ssl/ServerName/SSLEngineExplorerMatchedSNI.java failed intermittently due to SSLException: Tag mismatch |
8284950 | CgroupV1 detection code should consider memory.swappiness |
8272417 | ZGC: fastdebug build crashes when printing ClassLoaderData |
6782021 | It is not possible to read local computer certificates with the SunMSCAPI provider |
8282947 | JFR: Dump on shutdown live-locks in some conditions |
8288000 | compiler/loopopts/TestOverUnrolling2.java fails with release VMs |
8279032 | compiler/loopopts/TestSkeletonPredicateNegation.java times out with -XX:TieredStopAtLevel < 4 |
8289127 | Apache Lucene triggers: DEBUG MESSAGE: duplicated predicate failed which is impossible |
8285730 | unify _WIN32_WINNT settings |
8289910 | unify os::message_box across posix platforms |
8291633 | Build failures with GCC 11, Alpine 3 due to incompatible casts from nullptr |
8283903 | GetContainerCpuLoad does not return the correct result in share mode |
8288399 | MacOS debug symbol files not always deterministic in reproducible builds |
8289549 | ISO 4217 Amendment 172 Update |
8283277 | ISO 4217 Amendment 171 Update |
8280944 | Enable Unix domain sockets in Windows Selector notification mechanism |
8285693 | Create an automated test for JDK-4702199 |
8284077 | Create an automated test for JDK-4170173 |
8285617 | Fix java/awt/print/PrinterJob/ImagePrinting/PrintARGBImage.java manual test |
8289471 | Issue in Initialization of keys in ErrorMsg.java and XPATHErrorResources.java |
8291595 | [17u] Delete files missed in backport of 8269039 |
8283624 | Create an automated regression test for RFE-4390885 |
8223543 | [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java has issues |
8284535 | Fix PrintLatinCJKTest.java test that is failing with Parse Exception |
8283712 | Create a manual test framework class |
8283245 | Create a test for JDK-4670319 |
8283507 | Create a regression test for RFE 4287690 |
8282933 | Create a test for JDK-4529616 |
8283621 | Write a regression test for CCC4400728 |
8283623 | Create an automated regression test for JDK-4525475 |
8288992 | AArch64: CMN should be handled the same way as CMP |
8283015 | Create a test for JDK-4715496 |
8283493 | Create an automated regression test for RFE 4231298 |
8282789 | Create a regression test for the JTree usecase of JDK-4618767 |
8280913 | Create a regression test for JRootPane.setDefaultButton() method |
8269556 | sun/tools/jhsdb/JShellHeapDumpTest.java fails with RuntimeException ‘JShellToolProvider’ missing from stdout/stderr |
8275689 | [TESTBUG] Use color tolerance only for XRender in BlitRotateClippedArea test |
8257534 | misc tests failed with “NoClassDefFoundError: Could not initialize class java.util.concurrent.ThreadLocalRandom” |
8270312 | Error: Not a test or directory containing tests: java/awt/print/PrinterJob/XparColor.java |
8290417 | CDS cannot archive lamda proxy with useImplMethodHandle |
8290334 | Update FreeType to 2.12.1 |
8290246 | test fails “assert(init != __null) failed: initialization not found” |
8286314 | Trampoline not created for far runtime targets outside small CodeCache |
8284358 | Unreachable loop is not removed from C2 IR, leading to a broken graph |
8282351 | jpackage does not work if class file has $$ in the name on windows |
8283803 | Remove jtreg tag manual=yesno for java/awt/print/PrinterJob/PrintGlyphVectorTest.java and fix test |
8284898 | Enhance PassFailJFrame |
8283723 | Update Visual Studio 2022 to version 17.1.0 for Oracle builds on Windows |
8264792 | The NumberFormat for locale sq_XK formats price incorrectly. |
8283911 | DEFAULT_PROMOTED_VERSION_PRE not reset to ‘ea’ for jdk-17.0.4 |
7131823 | bug in GIFImageReader |
8282860 | Write a regression test for JDK-4164779 |
8288781 | C1: LIR_OpVisitState::maxNumberOfOperands too small |
8289853 | Update HarfBuzz to 4.4.1 |
8273506 | java Robot API did the ‘m’ keypress and caused /awt/event/KeyEvent/KeyCharTest/KeyCharTest.html is timing out on macOS 12 |
8284067 | jpackage’d launcher reports non-zero exit codes with error prompt |
8283087 | Create a test or JDK-4715503 |
8282548 | Create a regression test for JDK-4330998 |
8282234 | Create a regression test for JDK-4532513 |
8282343 | Create a regression test for JDK-4518432 |
8169468 | NoResizeEventOnDMChangeTest.java fails because FS Window didn’t receive all resizes! |
6854300 | [TEST_BUG] java/awt/event/MouseEvent/SpuriousExitEnter/SpuriousExitEnter_3.java fails in jdk6u14 & jdk7 |
8017175 | [TESTBUG] javax/swing/JPopupMenu/4634626/bug4634626.java sometimes failed on mac |
8255724 | [XRender] the BlitRotateClippedArea test fails on Linux in the XR pipeline |
8272736 | [JVMCI] Add API for reading and writing JVMCI thread locals |
8277493 | [REDO] Quarantined jpackage apps are labeled as “damaged” |
8282007 | Assorted enhancements to jpackage testing framework |
8278233 | [macos] tools/jpackage tests timeout due to /usr/bin/osascript |
8290020 | Deadlock in leakprofiler::emit_events during shutdown |
8289486 | Improve XSLT XPath operators count efficiency |
8287125 | [macos] Multiple jpackage tests fail/timeout on same host |
8286122 | [macos]: App bundle cannot upload to Mac App Store due to info.plist embedded in java exe |
8281738 | Create a regression test for checking the ‘Space’ key activation of focused Button |
8281988 | Create a regression test for JDK-4618767 |
8281745 | Create a regression test for JDK-4514331 |
8281535 | Create a regression test for JDK-4670051 |
8279370 | jdk.jpackage/share/native/applauncher/JvmLauncher.cpp fails to build with GCC 6.3.0 |
8278311 | Debian packaging doesn’t work |
8276837 | [macos]: Error when signing the additional launcher |
8271344 | Windows product version issue |
8290000 | Bump macOS GitHub actions to macOS 11 |
8280233 | Temporarily disable Unix domain sockets in Windows PipeImpl |
8282280 | Update Xerces to Version 2.12.2 |
8277429 | Conflicting jpackage static library name |
8274856 | Failing jpackage tests with fastdebug/release build |
8285097 | Duplicate XML keys in XPATHErrorResources.java and XSLTErrorResources.java |
8288499 | Restore cancel-in-progress in GHA |
8284014 | Menu items with submenus in JPopupMenu are not spoken on macOS |
8282407 | Missing ‘)’ in MacResources.properties |
8272815 | jpackage –type rpm produces an error: Invalid or unsupported type: [null] |
8273040 | Turning off JpAllowDowngrades (or Upgrades) |
8288003 | log events for os::dll_unload |
8287906 | Rewrite of GitHub Actions (GHA) sanity tests |
8274434 | move os::get_default_process_handle and os::dll_lookup to os_posix for POSIX platforms |
8289147 | unify os::infinite_sleep on posix platforms |
8290082 | [PPC64] ZGC C2 load barrier stub needs to preserve vector registers |
8289856 | [PPC64] SIGSEGV in C2Compiler::init_c2_runtime() after JDK-8289060 |
8290004 | [PPC64] JfrGetCallTrace: assert(_pc != nullptr) failed: must have PC |
8288599 | com/sun/management/OperatingSystemMXBean/TestTotalSwap.java: Expected total swap size … but getTotalSwapSpaceSize returned … |
8287902 | UnreadableRB case in MissingResourceCauseTest is not working reliably on Windows |
8272352 | Java launcher can not parse Chinese character when system locale is set to UTF-8 |
8287896 | PropertiesTest.sh fail on msys2 |
8287724 | Fix various issues with msys2 |
8286573 | Remove the unnecessary method Attr#attribTopLevel and its usage |
8287895 | Some langtools tests fail on msys2 |
8280863 | Update build README to reflect that MSYS2 is supported |
8289697 | buffer overflow in MTLVertexCache.m: MTLVertexCache_AddGlyphQuad |
8254318 | Remove .hgtags |
8289799 | Build warning in methodData.cpp memset zero-length parameter |
8278609 | [macos] accessibility frame is misplaced on a secondary monitor on macOS |
8286266 | [macos] Voice over moving JTable column to be the first column JVM crashes |
8278612 | [macos] test/jdk/java/awt/dnd/RemoveDropTargetCrashTest crashes with VoiceOver on macOS |
8289477 | Memory corruption with CPU_ALLOC, CPU_FREE on muslc |
8284977 | MetricsTesterCgroupV2.getLongValueEntryFromFile fails when named value doesn’t exist |
8287735 | Provide separate event category for dll operations |
8286277 | CDS VerifyError when calling clone() on object array |
8289569 | [test] java/lang/ProcessBuilder/Basic.java fails on Alpine/musl |
8276546 | [IR Framework] Whitelist and ignore CompileThreshold |
8269039 | Disable SHA-1 Signed JARs |
8287917 | System.loadLibrary does not work on Big Sur if JDK is built with macOS SDK 10.15 and earlier |
8288360 | CI: ciInstanceKlass::implementor() is not consistent for well-known classes |
8287432 | C2: assert(tn->in(0) != __null) failed: must have live top node |
8286625 | C2 fails with assert(!n->is_Store() && !n->is_LoadStore()) failed: no node with a side effect |
8278067 | Make HttpURLConnection default keep alive timeout configurable |
8256844 | Make NMT late-initializable |
8281181 | Do not use CPU Shares to compute active processor count |
8284944 | assert(cnt++ < 40) failed: infinite cycle in loop optimization |
8284294 | Create an automated regression test for RFE 4138746 |
8282936 | Write a regression test for JDK-4615365 |
8288467 | remove memory_operand assert for spilled instructions |
8287396 | LIR_Opr::vreg_number() and data() can return negative number |
8284680 | sun.font.FontConfigManager.getFontConfig() leaks charset |
8284956 | Potential leak awtImageData/color_data when initializes X11GraphicsEnvironment |
8289197 | [17u] Push of backport of 8286177 did not remove assertion |
8287366 | Improve test failure reporting in GHA |
8287672 | jtreg test com/sun/jndi/ldap/LdapPoolTimeoutTest.java fails intermittently in nightly run |
8287223 | C1: Inlining attempt through MH::invokeBasic() with null receiver |
8271078 | jdk/incubator/vector/Float128VectorTests.java failed a subtest |
8285923 | [REDO] JDK-8285802 AArch64: Consistently handle offsets in MacroAssembler as 64-bit quantities |
8287091 | aarch64 : guarantee(val < (1ULL « nbits)) failed: Field too big for insn |
8286177 | C2: “failed: non-reduction loop contains reduction nodes” assert failure |
8280696 | C2 compilation hits assert(is_dominator(c, n_ctrl)) failed |
8286870 | Memory leak with RepeatCompilation |
8279622 | C2: miscompilation of map pattern as a vector reduction |
8282937 | Write a regression test for JDK-4820080 |
8211002 | test/jdk/java/lang/Math/PowTests.java skips testing for non-corner-case values |
8286582 | Build fails on macos aarch64 when using –with-zlib=bundled |
8288754 | GCC 12 fails to build zReferenceProcessor.cpp |
8288303 | C1: Miscompilation due to broken Class.getModifiers intrinsic |
8283457 | [macos] libpng build failures with Xcode13.3 |
8285081 | Improve XPath operators count accuracy |
8286211 | Update PCSC-Lite for Suse Linux to 1.9.5 |
8284367 | JQuery UI upgrade from 1.12.1 to 1.13.1 |
8286638 | C2: CmpU needs to do more precise over/underflow analysis |
8282555 | Missing memory edge when spilling MoveF2I, MoveD2L etc |
8265360 | several compiler/whitebox tests fail with “private compiler.whitebox.SimpleTestCaseHelper(int) must be compiled” |
8274597 | Some of the dnd tests time out and fail intermittently |
8028998 | [TEST_BUG] [macosx] java/awt/dnd/DropTargetEnterExitTest/MissedDragExitTest.java failed |
8284521 | Write an automated regression test for RFE 4371575 |
8282046 | Create a regression test for JDK-8000326 |
8079267 | [TEST_BUG] Test java/awt/Frame/MiscUndecorated/RepaintTest.java fails |
8282778 | Create a regression test for JDK-4699544 |
8285380 | Fix typos in security |
8287113 | JFR: Periodic task thread uses period for method sampling events |
8284883 | JVM crash: guarantee(sect->end() <= sect->limit()) failed: sanity on AVX512 |
8285301 | C2: assert(!requires_atomic_access) failed: can’t ensure atomicity |
8285696 | AlgorithmConstraints:permits not throwing IllegalArgumentException when ‘alg’ is null |
8285398 | Cache the results of constraint checks |
8284675 | “jpackage.exe” creates application launcher without Windows Application Manfiest |
8286429 | jpackageapplauncher build fails intermittently in Tier[45] |
8273115 | CountedLoopEndNode::stride_con crash in debug build with -XX:+TraceLoopOpts |
8282640 | Create a test for JDK-4740761 |
8281569 | Create tests for Frame.setMinimumSize() method |
8282538 | PKCS11 tests fail on CentOS Stream 9 |
8283562 | JDK-8282306 breaks gtests on zero |
8286869 | unify os::dir_is_empty across posix platforms |
8282306 | os::is_first_C_frame(frame*) crashes on invalid link access |
8284686 | Interval of < 1 ms disables ExecutionSample events |
8281297 | TestStressG1Humongous fails with guarantee(is_range_uncommitted) |
8274517 | java/util/DoubleStreamSums/CompensatedSums.java fails with expected [true] but found [false] |
8283849 | AsyncGetCallTrace may crash JVM on guarantee |
8287663 | Add a regression test for JDK-8287073 |
8287073 | NPE from CgroupV2Subsystem.getInstance() |
8178969 | [TESTBUG] Wrong reporting of gc/g1/humongousObjects/TestHeapCounters test. |
8283441 | C2: segmentation fault in ciMethodBlocks::make_block_at(int) |
8172065 | javax/swing/JTree/4908142/bug4908142.java The selected index should be “aad” |
8284694 | Avoid evaluating SSLAlgorithmConstraints twice |
8159694 | HiDPI, Unity, java/awt/dnd/DropTargetEnterExitTest/MissedDragExitTest.java |
8285820 | C2: LCM prioritizes locally dependent CreateEx nodes over projections after 8270090 |
8270090 | C2: LCM may prioritize CheckCastPP nodes over projections |
8287741 | Fix of JDK-8287107 (unused cgv1 freezer controller) was incomplete |
8287107 | CgroupSubsystemFactory.setCgroupV2Path asserts with freezer controller |
8264666 | Change implementation of safeAdd/safeMult in the LCMSImageLayout class |
8287824 | The MTPerLineTransformValidation tests has a typo in the @run tag |
8225122 | Test AncestorResized.java fails when Windows desktop is scaled. |
8281183 | RandomGenerator:NextDouble() default behavior partially fixed by JDK-8280950 |
8280950 | RandomGenerator:NextDouble() default behavior non conformant after JDK-8280550 fix |
8280550 | SplittableRandom#nextDouble(double,double) can return result >= bound |
8283597 | [REDO] Invalid generic signature for redefined classes |
8282214 | Upgrade JQuery to version 3.6.0 |
8281628 | KeyAgreement : generateSecret intermittently not resetting |
8282467 | add extra diagnostics for JDK-8268184 |
8282477 | [x86, aarch64] vmassert(_last_Java_pc == NULL, “already walkable”); fails with async profiler |
8286114 | [test] show real exception in bomb call in sun/rmi/runtime/Log/checkLogging/CheckLogging.java |
8240903 | Add test to check that jmod hashes are reproducible |
8287202 | GHA: Add macOS aarch64 to the list of default platforms for workflow_dispatch event |
8287016 | Bump update version for OpenJDK: jdk-17.0.5 |