Find JSRs
Submit this Search


Ad Banner
 
 
 
 

JSR 384 Maintenance Release 2: Java SE 11 (18.9)
JSR 384 Maintenance Release 2: Java SE 11 (18.9)
Change Summary
Iris Clark
2023/04/07

This document describes additional changes to the specification of JSR 384 which is defined by the Final Release in September 2018 and Maintenance Release 1 in March 2019. When specification text is provided, insertions are shown on a light green background and deletions are shown struck through on a light red background. Links to pages outside of those explicitly changed by this specification may not be functional.

Send comments to java-se-mr-spec-comments@openjdk.org.

1
Version Identification  

There is no change to the values returned by the system properties java.specification.version and java.vm.specification.version. They continue to report "11". The value returned by the newly defined system property java.specification.maintenance.version is "2".

2
java.specification.maintenance.version  

Add a new system property, java.specification.maintenance.version, which returns the maintenance release number of the Java SE specification being implemented by the JDK.

Add the system property to the table in the specification of System.getProperties():

java.specification.maintenance.version

Java Runtime Environment specification maintenance version, may be interpreted as a positive integer (optional, see below)

Add the following details to the specification of System.getProperties():

The java.specification.maintenance.version property is defined if the specification implemented by this runtime at the time of its construction had undergone a maintenance release. When defined, its value identifies that maintenance release. To indicate the first maintenance release this property will have the value "1", to indicate the second maintenance release, this property will have the value "2", and so on.

The Change Specification Request (CSR) associated with this change is 8302366. This specification of java.specification.maintenance.version aligns with the corresponding specification in the Final Release of Java SE 19.

3
GB18030-2022 Support  

Update the second paragraph of the "Unicode Conformance" section of the java.lang.Character class specification to allow code points in the range of U+9FEB to U+9FEF (5 code points) to support GB18030-2022, Implementation Level 2.

The Java SE 11 Platform uses character information from version 10.0 of the Unicode Standard, with an extension. two extensions. The Java SE 11 Platform allows an implementation of class Character to use the Japanese Era code point, U+32FF, from the first version of the Unicode Standard after 10.0 that assigns the code point. First, the Java SE 11 Platform allows an implementation of class Character to use the code points in the range of U+9FEB to U+9FEF from the Unicode Standard version 11.0, in order for the class to allow the "Implementation Level 2" of the Chinese GB18030-2022 standard. Second, the Java SE 11 Platform allows an implementation of class Character to use the Japanese Era code point, U+32FF, from the Unicode Standard version 12.1. Consequently, the behavior of fields and methods of class Character may vary across implementations of the Java SE 11 Platform when processing the aforementioned code points ( outside of version 10.0 ), except for the following methods that define Java identifiers: isJavaIdentifierStart(int), isJavaIdentifierStart(char), isJavaIdentifierPart(int), and isJavaIdentifierPart(char). Code points in Java identifiers must be drawn from version 10.0 of the Unicode Standard.

The Change Specification Requests (CSR) associated with this change are 8301558 and 8305685.