With the JDK 17 baseline, having constants for Java 16 and below is pointless as our JavaVersion class can only be loaded on a Java 17 or later VM.

Comment From: daixi98

Hi @wilkinsona, any suggestion on the OnJavaCondition class?

@Test
void boundsTests() {
    testBounds(Range.EQUAL_OR_NEWER, JavaVersion.NINE, JavaVersion.EIGHT, true);
    testBounds(Range.EQUAL_OR_NEWER, JavaVersion.EIGHT, JavaVersion.EIGHT, true);
    testBounds(Range.EQUAL_OR_NEWER, JavaVersion.EIGHT, JavaVersion.NINE, false);
    testBounds(Range.OLDER_THAN, JavaVersion.NINE, JavaVersion.EIGHT, false);
    testBounds(Range.OLDER_THAN, JavaVersion.EIGHT, JavaVersion.EIGHT, false);
    testBounds(Range.OLDER_THAN, JavaVersion.EIGHT, JavaVersion.NINE, true);
}

Comment From: wilkinsona

I think it'll be easiest to wait until we've added EIGHTEEN (https://github.com/spring-projects/spring-boot/issues/29524).