Spring Boot 3.0 M1 发布,正式弃用 Java 8,最低要求 Java 17。。。
点击关注公众号,Java干货及时送达
上一篇:Spring Boot 2.6.3 发布,一招解决 Log4j2、Logback 漏洞!!
Spring Boot 3.0.0-M1
Spring Boot 近日发布了第一个里程碑版本:Spring Boot 3.0.0-M1
https://spring.io/blog/2022/01/20/spring-boot-3-0-0-m1-is-now-available
这个版本变动就大了,栈长这篇就给你好好梳理下。
最低依赖
这个表格是 3.0 所变动的,其他的要求继承 Spring Boot 2.x。
组件 | 版本 |
---|---|
JDK | JDK 17+ |
Servlet | Servlet 5.0 |
JPA | JPA 3.0 |
Spring | Spring Framework 6+ |
Gradle | Gradle 7.3 |
这里最值得关注的是,JDK 直接从 Java 8 干到了 Java 17,好家伙。。
这个也很好理解了,Java 17 是继 Java 11 之后的第一个长期支持版本,关键还是 Oracle 推出商用免费政策后的第一个版本,等 Spring Boot 3.0 正式发布,Java 8 算是熬到头了。
到时,你还会说坚守 Java 8 吗?
迁移 Jakarta EE
几年前 Java EE 已经被 Eclipse 基金会改名为 Jakarta EE,很多规范也被重合名了,比如,这个 javax.*
包命名就不能再用了,已经被修改为 jakarta.*
。
修改示例:
javax.servlet.Filter
现在要修改为:
jakarta.servlet.Filter
Spring Boot 3.0 已经将 Java EE 所有的 APIs 迁移到了 Jakarta EE,就会影响之前 Java EE 的规范标准,这个改动可能是全盘的。
体验尝鲜
如果你想体验 Spring Boot 3.0,可以上官网一键生成项目:
https://start.spring.io/
选择 Spring Boot 3.0.0(M1)版本,另外记得要勾选 Java 17,不然可能编译错误。
这里栈长就不再演示了,等正式版发布,栈长再做一次全盘的分享,可以持续关注公众号Java技术栈,公众号第一时间推送。
往期 Spring Boot 教程及示例源码整理:
https://github.com/javastacks/spring-boot-best-practice
总结
Spring Boot 3.0.0 第一个里程碑版本 M1 发布,有两个重大的变更依赖项:
最低要求 Java 17; Java EE 迁移到了 Jakarta EE;
重要: 因为 Jakarta EE 兼容性的问题,需要依赖其他第三方库的同步更新,所以这个版本并没有包括所有 Spring Boot 2.x 的功能,有许多暂时移除的功能,待正式版本发布的过程中会逐渐完善。
所以,如果你只是想尝鲜是可以的,用到现有的项目上生产环境就不行了。。
未来的计划,Spring Boot 3.0 会每两个月发布一个里程碑版本,M2 里程碑版本计划在今年 3 月 24 日发布,第一个正式版本计划在今年 11 月发布。
最后,如果你还没用过 Spring Boot,今天我就送你一份 《Spring Boot 学习笔记》这个很全了,包括底层实现原理及代码实战,非常齐全,助你快速打通 Spring Boot 的各个环节。
Spring Boot 最新进展和教程解读,栈长后续会继续分享,可以持续关注公众号Java技术栈,公众号第一时间推送。
版权声明!!!
本文系公众号 "Java技术栈" 原创,转载、引用本文内容请注明出处,抄袭、洗稿一律投诉侵权,后果自负,并保留追究其法律责任的权利。
关注Java技术栈看更多干货