I believe that the latest version of spring-context-6.0.0.jar And uploaded to Maven Central Has been compiled with the wrong jvm version, so cannot work inside a jdk8 vm
Last Version: 5.3.24, compiled for JDK8 From https://repo1.maven.org/maven2/org/springframework/spring-context/5.3.24/spring-context-5.3.24.module
{
"formatVersion": "1.1",
"component": {
"group": "org.springframework",
"module": "spring-context",
"version": "5.3.24",
"attributes": {
"org.gradle.status": "release"
}
},
"createdBy": {
"gradle": {
"version": "7.5.1"
}
},
"variants": [
{
"name": "apiElements",
"attributes": {
"org.gradle.category": "library",
"org.gradle.dependency.bundling": "external",
"org.gradle.jvm.version": 8,
"org.gradle.libraryelements": "jar",
"org.gradle.usage": "java-api",
"org.jetbrains.kotlin.localToProject": "public",
"org.jetbrains.kotlin.platform.type": "jvm"
},
...
Now from version 6.0.0 , compiled for JDK17 https://repo1.maven.org/maven2/org/springframework/spring-context/6.0.0/spring-context-6.0.0.module
{
"formatVersion": "1.1",
"component": {
"group": "org.springframework",
"module": "spring-context",
"version": "6.0.0",
"attributes": {
"org.gradle.status": "release"
}
},
"createdBy": {
"gradle": {
"version": "7.5.1"
}
},
"variants": [
{
"name": "apiElements",
"attributes": {
"org.gradle.category": "library",
"org.gradle.dependency.bundling": "external",
"org.gradle.jvm.environment": "standard-jvm",
"org.gradle.jvm.version": 17,
"org.gradle.libraryelements": "jar",
"org.gradle.usage": "java-api",
"org.jetbrains.kotlin.platform.type": "jvm"
},
...
Comment From: ttddyy
@Andrew-Russell-fingo Spring Framework 6 requires Java 17+ as a baseline. So, it doesn't work with Java8.
As a major revision of the core framework, Spring Framework 6.0 comes with a Java 17+ baseline and a move to Jakarta EE 9+ (in the jakarta namespace), with a focus on the recently released Jakarta EE 10 APIs such as Servlet 6.0 and JPA 3.1.
From https://spring.io/blog/2022/11/16/spring-framework-6-0-goes-ga
Though, looking at the 6.0.0 documentation, it could be read it works with Java8+.
As of Spring Framework 5.1, Spring requires JDK 8+ (Java SE 8+) and provides out-of-the-box support for JDK 11 LTS. Java SE 8 update 60 is suggested as the minimum patch release for Java 8, but it is generally recommended to use a recent patch release.
https://docs.spring.io/spring-framework/docs/current/reference/html/overview.html#overview
I believe this documentation needs an update.
Comment From: Andrew-Russell-fingo
Thanks for resolving the documentation.