Overview
Inspired by #3918 and related discussions, we should consider introducing a mechanism for users to supply arbitrary Java feature versions that are not yet covered by the JRE enum constants.
Note that a "feature" version refers to the leading number in a Java version -- for example, the 21 in 21.0.4. In Java 9, this was referred to as the major number (JEP 223), but the terminology changed to feature in Java 10 (JEP 322).
Deliverables
Overview
Inspired by #3918 and related discussions, we should consider introducing a mechanism for users to supply arbitrary Java feature versions that are not yet covered by the
JREenum constants.Note that a "feature" version refers to the leading number in a Java version -- for example, the
21in21.0.4. In Java 9, this was referred to as the major number (JEP 223), but the terminology changed to feature in Java 10 (JEP 322).Deliverables
JRE(viaJRE.java.jte) to support feature versions.versionsattribute in@EnabledOnJreand reviseEnabledOnJreConditionaccordingly.versionsattribute in@DisabledOnJreand reviseDisabledOnJreConditionaccordingly.minVersionandmaxVersionattributes in@EnabledForJreRangeand reviseEnabledForJreRangeConditionaccordingly.minVersionandmaxVersionattributes in@DisabledForJreRangeand reviseDisbledForJreRangeConditionaccordingly.EnabledOnJreIntegrationTests,DisabledOnJreIntegrationTests,EnabledOnJreConditionTests,DisabledOnJreConditionTests, etc.@APIannotations.