分开搞。 第一步,先升级 jdk 17 + SpringBoot 2.x ,这一步可能遇到的就是 jdk 升级的一些问题,最好不要升级语言特性,没意义,如果可能,SpringBoot 升级到 2.7.x ,可以最大减轻后续升级的负担 第二步,升级 SpringBoot 3.x ,这一步遇到的问题更多的是 SpringBoot 的不兼容升级,从 2.7.x 升级上来阻力可以说是最低 第三步,升级 SpringBoot 3.2+ + JDK 21 , 开启 Virtual Thread ,充分享受性能红利。 我个人的建议是:放弃语法特性升级,关注 JVM 升级即可,这样可以给自己留下最大的退路