Compatibility matrix

Which versions work together?

Spring Boot pins tested versions of the whole stack. Pick your Spring Boot version to see the Spring Framework, minimum Java, platform, Hibernate, JPA and Spring Data versions it manages for you.

Starting a new project?

Use Spring Boot 4.1 on a long-term support Java release (Java 25, or 21). You get Spring Framework 7.0, Hibernate 7.4 and Jakarta Persistence 3.2 without choosing versions yourself.

On Spring Boot 2.x?

Upgrade to 2.7 first, then to 3.x: that jump moves you to Java 17 and from javax.* to jakarta.* packages. From 3.5, moving to 4.x is smaller. The Spring Boot upgrade planner lists every change.

Spring Boot compatibility matrix
Spring BootSpring FrameworkMinimum JavaPlatformHibernateJPASpring Data
4.17.0Java 17Jakarta EE 117.43.22026.0 (JPA 4.1)
4.07.0Java 17Jakarta EE 117.1 → 7.23.22025.1 (JPA 4.0)
3.56.2Java 17Jakarta EE 106.63.12025.0 (JPA 3.5)
3.46.2Java 17Jakarta EE 106.63.12024.1 (JPA 3.4)
3.36.1Java 17Jakarta EE 106.53.12024.0 (JPA 3.3)
3.26.1Java 17Jakarta EE 106.3 → 6.43.12023.1 (JPA 3.2)
3.16.0Java 17Jakarta EE 106.23.12023.0 (JPA 3.1)
3.06.0Java 17Jakarta EE 106.13.12022.0 (JPA 3.0)
2.75.3Java 8Java EE 8 (javax)5.62.22021.2 (JPA 2.7)
2.65.3Java 8Java EE 8 (javax)5.62.22021.1 (JPA 2.6)
2.55.3Java 8Java EE 8 (javax)5.42.22021.0 (JPA 2.5)
2.45.3Java 8Java EE 8 (javax)5.42.22020.0 (JPA 2.4)
2.35.2Java 8Java EE 8 (javax)5.42.2Neumann (JPA 2.3)
2.25.2Java 8Java EE 8 (javax)5.42.2Moore (JPA 2.2)
2.15.1Java 8Java EE 8 (javax)5.32.2Lovelace (JPA 2.1)
2.05.0Java 8Java EE 8 (javax)5.22.2Kay (JPA 2.0)
1.54.3Java 7Java EE 7 (javax)5.02.1Ingalls (JPA 1.11)

These are the versions each Spring Boot line manages; patch releases can move to a newer minor (shown with →). Check your build’s dependency tree (mvn dependency:tree) for the exact patch versions.