java
技术随笔
Spring Boot 各版本与 Java 版本对应关系(含 2.x 与 3.x 对照表)
搭建或升级 Spring Boot 项目时,最容易被忽略的一点就是:Spring Boot 版本与 JDK 版本强相关。选错版本会直接导致编译失败或启动报错。下面给出经过官方确认的对应关系。
一、核心结论
- Spring Boot 1.x:已停止维护,最低 Java 6/7,不建议新项目使用。
- Spring Boot 2.0 ~ 2.7:基于 Java 8(后期版本兼容 11、17)。
- Spring Boot 3.0 及以上:最低要求 Java 17,并迁移到 Jakarta EE 9(包名 javax 改为 jakarta)。
二、常用版本对应表
| Spring Boot | Spring Framework | Java | 说明 |
|---|---|---|---|
| 2.7.x | 5.3.x | 8 / 11 / 17 | 2.x 系列最后一个版本 |
| 3.0.x | 6.0.x | 17+ | 迁移到 Jakarta EE 9 |
| 3.1.x | 6.0.x | 17+ | |
| 3.2.x | 6.1.x | 17 / 21 | 支持虚拟线程 |
| 3.3.x | 6.1.x | 17 / 21 | |
| 3.4.x | 6.2.x | 17 / 21 |
三、升级时的注意点
- 升级到 3.x 前,确保本地已安装 JDK 17 及以上。
- 代码中的 javax.servlet、javax.persistence 等需替换为 jakarta.*。
- 部分第三方 starter 可能尚未适配 3.x,升级前先确认兼容性。