Liberica JDK 11.0.17+7 Release Notes


The full version string for this update release is 11.0.17+7. The version number is 11.

Liberica JDK 11.0.17+7

Liberica is a certified, Java SE 11-compliant distribution of OpenJDK 11 which works on server (Linux x86_64, Linux ARM64, Solaris SPARC, Solaris x64, Windows 64), desktop (Windows 64, Windows 32, Mac, Linux x86_64), and embedded devices (Linux ARM64, Linux ARMv7, including Raspberry Pi 2 & 3 (ARMv6 hardfloat)). It has the following notable additions:

  • Linux x86_64 version contains experimental support for ZGC.
  • Linux x86_64, ARMv8 and ARMv7 distributions include a choice of Client VM, Server VM and Minimal VM.
  • Alpine Linux x86_64 version is build with musl support.
  • Windows x86_64, Windows x86, Windows ARMv8, Mac, Linux x86_64, Linux x86 and Linux ARMv7 distributions contain OpenJFX 11.
  • Linux ARMv7 distribution contains Device IO API compiled for Raspberry Pi.

Please refer to the Oracle JDK 11.0.17 release notes for further information on JDK 11 features. This document further outlines the peculiarities of Liberica distribution as compared to Oracle JDK 11 distribution.

Supported Server and Desktop configurations

Liberica is supported on the following OSes:

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

It is also known to work on other Linux distributions and Windows versions.

Note: The minimum supported Linux kernel version is 2.6.18 and GLIBC version 2.6. LibericaFX works on all supported Ubuntu versions, Red Hat Linux family starting from 7.x and SUSE versions with GTK3 backend.

Supported Embedded configurations

Liberica is tested and certified on Raspberry Pi 2 & 3 running the following OSes:

  • Raspbian OS (armhf)
  • OpenSUSE (armv8)

It is also known to work with Debian (armhf) and Ubuntu (armhf).

Liberica JDK 11 distribution

Liberica JDK 11.0.17 are distributed as .rpm, .zip, .deb and .tar.gz packages. Please select the one which is most appropriate for your purposes.

Liberica 11 introduced all new features supported by OpenJDK 11.

With the introduction of the Jigsaw feature in JDK 9 and Minimal VM it is now possible to create a Runtime that is sufficient to run your application and trim down the size of the Runtime. To generate a Runtime with just the Minimal VM, add --vm=minimal to jlink options.

By default, the Liberica uses Server VM. Server VM and Client VM can be enabled with -server and -client command line options, respectively. In case the deployment requires to minimize the footprint, it may be beneficial to use Minimal VM, which emphasises on a minimal footprint. It has C1 JIT compiler only, Serial GC and no serviceability features.

LibericaFX for the Raspberry Pi

Liberica JDK 11 come with a bundled LibericaFX implementation, which is based on OpenJFX. The following tables lists Java FX modules status of Liberica distribution

  • Java FX Graphics - works.
  • Java FX Controls - works.
  • Java FX Media - does not work.
  • Java FX Webkit - does not work.

The following pipelines are known to work: EGL, SW (direct framebuffer) and GTK. By default, Liberica tries to use the accelerated EGL pipeline, which requires the presence of EGL libraries. If they are not found, the implementation falls back to software rendering.

Use the following command line options to specify the rendering pipeline:

  • -Dprism.order=sw forces the use of software rendering pipeline.
  • -Dprism.order=es2 forces the use of EGL pipeline and hardware acceleration.
  • -Djavafx.platform=gtk if you would like to launch a LibericaFX application using Liberica from X11.

Please refer to the following wiki for more information.

Device IO API for the Raspberry Pi

Liberica JDK 11 comes with a bundled OpenJDK Device I/O (DIO) API implementation module. DIO provides a Java API for accessing Raspberry PI GPIO pins and for communicating with peripheral devices:

  • General Purpose Input/Output (GPIO).
  • Inter-Integrated Circuit Bus (I2C), Serial Peripheral Interface (SPI).
  • Universal Asynchronous Receiver/Transmitter (UART).

Please refer to the following wiki for more information.

Security Baselines

BellSoft Liberica follows the security baselines for Oracle Java SE. Please refer to the Oracle documentation for a list of issues fixed in a given release.

Known Issues

LibericaFX and EGL on Raspbian

As of 2017, the default location of Broadcom libEGL.so and libGLESv2.so has changed in Raspbian OS. If you'd like to leverage hardware EGL acceleration available from Broadcom video drivers in LibericaFX while running a recent Raspbian OS, run the following command:

cd /opt/vc/lib
sudo ln -s libbrcmEGL.so libEGL.so
sudo ln -s libbrcmGLESv2.so libGLESv2.so

CVEs

This release does not contain any resolved Common Vulnerabilities and Exposures (CVEs).

Issues fixed

Issue Description
8291630 Update attribution in webkit.md file
8292609 Cherry-pick WebKit 614.1 stabilization fixes
8286774 Replace openjdk.java.net with openjdk.org
8288450 Update attribution in gstreamer.md file 8288449: Update attribution in glib.md file
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
8291039 Change JavaFX release version to 11.0.17 in jfx11u
8286918 Better HttpServer service
8286910 Improve JNDI lookups
8286533 Key X509 usages
8286526 Improve NTLM support
8286519 Better memory handling
8286511 Improve macro allocation
8295057 [11u] Remove designator DEFAULT_PROMOTED_VERSION_PRE=ea for release 11.0.17
8293429 [11u] minor update in attribute style
8289366 Improve HTTP/2 client usage
8288508 Enhance ECDSA usage
8287446 Enhance icon presentations
8286077 Wider MultiByte conversions
8285662 Better permission resolution
8282252 Improve BigInteger/Decimal validation
8292579 (tz) Update Timezone Data to 2022c
8028265 Add legacy tz tests to OpenJDK
8275887 jarsigner prints invalid digest/signature algorithm warnings if keysize is weak/disabled
8291570 [TESTBUG] Part of JDK-8250984 absent from 11u
8287463 JFR: Disable TestDevNull.java on Windows
8279385 [test] Adjust sun/security/pkcs12/KeytoolOpensslInteropTest.java after 8278344
8287663 Add a regression test for JDK-8287073
8278344 sun/security/pkcs12/KeytoolOpensslInteropTest.java test fails because of different openssl output
8287741 Fix of JDK-8287107 (unused cgv1 freezer controller) was incomplete
8287073 NPE from CgroupV2Subsystem.getInstance()
8287107 CgroupSubsystemFactory.setCgroupV2Path asserts with freezer controller
8230708 Hotspot fails to build on linux-sparc with gcc-9
8282947 JFR: Dump on shutdown live-locks in some conditions
8238586 [TESTBUG] vmTestbase/jit/tiered/Test.java failed when TieredCompilation is disabled
8292852 [11u] TestMemoryWithCgroupV1 fails after JDK-8292768
8275008 gtest build failure due to stringop-overflow warning with gcc11
8284950 CgroupV1 detection code should consider memory.swappiness
8291713 assert(!phase->exceeding_node_budget()) failed: sanity after JDK-8223389
8283903 GetContainerCpuLoad does not return the correct result in share mode
8279032 compiler/loopopts/TestSkeletonPredicateNegation.java times out with -XX:TieredStopAtLevel < 4
8289569 [test] java/lang/ProcessBuilder/Basic.java fails on Alpine/musl
8242188 error in jtreg test jdk/jfr/api/consumer/TestRecordedFrame.java on linux-aarch64
8239423 jdk/jfr/jvm/TestJFRIntrinsic.java failed with -XX:-TieredCompilation
8239265 JFR: Test cleanup of jdk.jfr.api.consumer package
8251152 ARM32: jtreg c2 Test8202414 test crash
8214078 (fs) SecureDirectoryStream not supported on arm32
8252145 Unify Info.plist files with correct version strings
7131823 bug in GIFImageReader
8247546 Pattern matching does not skip correctly over supplementary characters
8289549 ISO 4217 Amendment 172 Update
8209052 Low contrast in docs/api/constant-values.html
8283803 Remove jtreg tag manual=yesno for java/awt/print/PrinterJob/PrintGlyphVectorTest.java and fix test
8284898 Enhance PassFailJFrame
8284535 Fix PrintLatinCJKTest.java test that is failing with Parse Exception
8283712 Create a manual test framework class
8283277 ISO 4217 Amendment 171 Update
8233712 Limit default tests jobs based on ulimit -u setting
8291794 [11u] Corrections after backport of JDK-8212028
8221907 make reconfigure breaks when configured with relative paths
8288928 Incorrect GPL header in pnglibconf.h (backport of JDK-8185041)
8285693 Create an automated test for JDK-4702199
8284077 Create an automated test for JDK-4170173
8288781 C1: LIR_OpVisitState::maxNumberOfOperands too small
8289471 Issue in Initialization of keys in ErrorMsg.java and XPATHErrorResources.java
8290000 Bump macOS GitHub actions to macOS 11
8283624 Create an automated regression test for RFE-4390885
8223543 [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java has issues
8283245 Create a test for JDK-4670319
8221871 javadoc should not set role=region on
elements
8218413 make reconfigure ignores configure-time AUTOCONF environment variable
8287432 C2: assert(tn->in(0) != __null) failed: must have live top node
8267880 Upgrade the default PKCS12 MAC algorithm
8238268 Many SA tests are not running on OSX because they do not attempt to use sudo when available
8238196 tests that use SA Attach should not be allowed to run against signed binaries on Mac OS X 10.14.5 and later
8282933 Create a test for JDK-4529616
8283507 Create a regression test for RFE 4287690
8283621 Write a regression test for CCC4400728
8283623 Create an automated regression test for JDK-4525475
8269039 Disable SHA-1 Signed JARs
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
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
8275689 [TESTBUG] Use color tolerance only for XRender in BlitRotateClippedArea test
8270312 Error: Not a test or directory containing tests: java/awt/print/PrinterJob/XparColor.java
8264792 The NumberFormat for locale sq_XK formats price incorrectly.
8268185 Update GitHub Actions for jtreg 6
8266254 Update to use jtreg 6
8265020 tests must be updated for new TestNG module name
8258946 Fix optimization-unstable code involving signed integer overflow
8210960 Allow --with-boot-jdk-jvmargs to work during configure
8285728 Alpine Linux build fails with busybox tar
8239379 ProblemList serviceability/sa/sadebugd/DebugdConnectTest.java on OSX
8271512 ProblemList serviceability/sa/sadebugd/DebugdConnectTest.java due to 8270326
8282860 Write a regression test for JDK-4164779
8284367 JQuery UI upgrade from 1.12.1 to 1.13.1
8285097 Duplicate XML keys in XPATHErrorResources.java and XSLTErrorResources.java
8290886 [11u]: Backport of JDK-8266250 introduced test failures
8289853 Update HarfBuzz to 4.4.1
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
8186143 keytool -ext option doesn't accept wildcards for DNS subject alternative names
8235870 C2 crashes in IdealLoopTree::est_loop_flow_merge_sz()
8266461 tools/jmod/hashes/HashesTest.java fails: static @Test methods
8267180 Typo in copyright header for HashesTest
8272352 Java launcher can not parse Chinese character when system locale is set to UTF-8
8290813 jdk/nashorn/api/scripting/test/ScriptObjectMirrorTest.java fails: assertEquals is ambiguous
8266460 java.io tests fail on null stream with upgraded jtreg/TestNG
8266250 WebSocketTest and WebSocketProxyTest call assertEquals(List<byte[]>, List<byte[]>)
8282280 Update Xerces to Version 2.12.2
8271010 vmTestbase/gc/lock/malloc/malloclock04/TestDescription.java crashes intermittently
8288360 CI: ciInstanceKlass::implementor() is not consistent for well-known classes
8208471 nsk/jdb/unwatch/unwatch002/unwatch002.java fails with "Prompt is not received during 300200 milliseconds"
8266774 System property values for stdout/err on Windows UTF-8
8289486 Improve XSLT XPath operators count efficiency
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
8265531 doc/building.md should mention homebrew install freetype
8288865 [aarch64] LDR instructions must use legitimized addresses
8284758 [linux] improve print_container_info
8274687 JDWP deadlocks if some Java thread reaches wait in blockOnDebuggerSuspend
8257623 vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted001/TestDescription.java shouldn't use timeout
8238203 Return value of GetUserDefaultUILanguage() should be handled as LANGID
8253916 ResourceExhausted/resexhausted001 crashes on Linux-x64
6606767 resexhausted00[34] fail assert(!thread->owns_locks(), "must release all locks when leaving VM")
8249623 test @ignore-d due to 7013634 should be returned back to execution
8218128 vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted003 and 004 use wrong path to test classes
8288763 Pack200 extraction failure with invalid size
8262085 Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux
8285081 Improve XPath operators count accuracy
8284944 assert(cnt++ < 40) failed: infinite cycle in loop optimization
8286211 Update PCSC-Lite for Suse Linux to 1.9.5
8286177 C2: "failed: non-reduction loop contains reduction nodes" assert failure
8271078 jdk/incubator/vector/Float128VectorTests.java failed a subtest
8255729 com.sun.tools.javac.processing.JavacFiler.FilerOutputStream is inefficient
8236490 Compiler bug relating to @NonNull annotation
8285380 Fix typos in security
8287223 C1: Inlining attempt through MH::invokeBasic() with null receiver
8290004 [PPC64] JfrGetCallTrace: assert(_pc != nullptr) failed: must have PC
8289856 [PPC64] SIGSEGV in C2Compiler::init_c2_runtime() after JDK-8289060
8290198 Shenandoah: a few Shenandoah tests failure after JDK-8214799 11u backport
8278067 Make HttpURLConnection default keep alive timeout configurable
8254318 Remove .hgtags
8193462 Fix Filer handling of package-info initial elements
8266675 Optimize IntHashTable for encapsulation and ease of use
8203277 preflow visitor used during lambda attribution shouldn't visit class definitions inside the lambda body
8254178 Remove .hgignore
8289799 Build warning in methodData.cpp memset zero-length parameter
8279622 C2: miscompilation of map pattern as a vector reduction
8289477 Memory corruption with CPU_ALLOC, CPU_FREE on muslc
8247964 All log0() in com/sun/org/slf4j/internal/Logger.java should be private
8247907 XMLDsig logging does not work
8219074 [TESTBUG] runtime/containers/docker/TestCPUAwareness.java typo of printing parameters (period should be shares)
8281181 Do not use CPU Shares to compute active processor count
8277893 Arraycopy stress tests
8287672 jtreg test com/sun/jndi/ldap/LdapPoolTimeoutTest.java fails intermittently in nightly run
8285820 C2: LCM prioritizes locally dependent CreateEx nodes over projections after 8270090
8270090 C2: LCM may prioritize CheckCastPP nodes over projections
8215291 Broken links when generating from project without modules
8288467 remove memory_operand assert for spilled instructions
8282555 Missing memory edge when spilling MoveF2I, MoveD2L etc
8284882 SIGSEGV in Node::verify_edges due to compilation bailout
8283441 C2: segmentation fault in ciMethodBlocks::make_block_at(int)
8285696 AlgorithmConstraints:permits not throwing IllegalArgumentException when 'alg' is null
8285398 Cache the results of constraint checks
8284694 Avoid evaluating SSLAlgorithmConstraints twice
8282214 Upgrade JQuery to version 3.6.0
8284680 sun.font.FontConfigManager.getFontConfig() leaks charset
8284956 Potential leak awtImageData/color_data when initializes X11GraphicsEnvironment
8274506 TestPids.java and TestPidsLimit.java fail with podman run as root
8287366 Improve test failure reporting in GHA
8286582 Build fails on macos aarch64 when using --with-zlib=bundled
8273526 Extend the OSContainer API pids controller with pids.current
8278519 serviceability/jvmti/FieldAccessWatch/FieldAccessWatch.java failed "assert(handle != __null) failed: JNI handle should not be null"
8281569 Create tests for Frame.setMinimumSize() method
8288754 GCC 12 fails to build zReferenceProcessor.cpp
8253829 Wrong length compared in SSPI bridge
8210722 JAXP Tests: CatalogSupport2 and CatalogSupport3 generate incorrect messages upon failure
8266881 Enable debug log for SSLEngineExplorerMatchedSNI.java
8164804 sun/security/ssl/SSLSocketImpl/CloseSocket.java makes not reliable time assumption
8217170 gc/arguments/TestUseCompressedOopsErgo.java timed out
8272398 Update DockerTestUtils.buildJdkDockerImage()
8159694 HiDPI, Unity, java/awt/dnd/DropTargetEnterExitTest/MissedDragExitTest.java
8281628 KeyAgreement : generateSecret intermittently not resetting
8265100 (fs) WindowsFileStore.hashCode() should read cached hash code once
8264400 (fs) WindowsFileStore equality depends on how the FileStore was constructed
8139348 Deprecate 3DES and RC4 in Kerberos
8261160 Add a deserialization JFR event
8236823 Ensure that API documentation uses minified libraries
8226976 SessionTimeOutTests uses == operator for String value check
8220744 [TESTBUG] Move RedefineTests from runtime to serviceability
8217332 JTREG: Clean up, use generics instead of raw types
8213695 gc/TestAllocateHeapAtMultiple.java is slow in some configs
8219149 ProcessTools.ProcessBuilder should print timing info for subprocesses
8282538 PKCS11 tests fail on CentOS Stream 9
8251551 Use .md filename extension for README
8212904 JTextArea line wrapping incorrect when using UI scale
8283849 AsyncGetCallTrace may crash JVM on guarantee
8172065 javax/swing/JTree/4908142/bug4908142.java The selected index should be "aad"
8225122 Test AncestorResized.java fails when Windows desktop is scaled.
8284754 print more interesting env variables in hs_err and VM.info
8266490 Extend the OSContainer API to support the pids controller of cgroups
8274517 java/util/DoubleStreamSums/CompensatedSums.java fails with expected [true] but found [false]
8269517 compiler/loopopts/TestPartialPeelingSinkNodes.java crashes with -XX:+VerifyGraphEdges
8267271 Fix gc/arguments/TestNewRatioFlag.java expectedNewSize calculation
8183372 Refactor java/lang/Class shell tests to java
8223575 add subspace transitions to gc+metaspace=info log lines
8209736 runtime/RedefineTests/ModifyAnonymous.java fails with NullPointerException when running in CDS mode
8069343 Improve gc/g1/TestHumongousCodeCacheRoots.java to use jtreg @requires
8286114 [test] show real exception in bomb call in sun/rmi/runtime/Log/checkLogging/CheckLogging.java
8239902 [macos] Remove direct usage of JSlider, JProgressBar classes in CAccessible class
8210107 vmTestbase/nsk/stress/network tests fail with Cannot assign requested address (Bind failed)
8287336 GHA: Workflows break on patch versions
8240903 Add test to check that jmod hashes are reproducible
8214427 probable bug in logic of ConcurrentHashMap.addCount()
8283017 GHA: Workflows break with update release versions
8287202 GHA: Add macOS aarch64 to the list of default platforms for workflow_dispatch event
8287017 Bump update version for OpenJDK: jdk-11.0.17