从 Spring Native 到 Spring Boot 3

工程 | Sébastien Deleuze | 2023年2月23日 | ...

今天,我们完成了 Spring 对构建原生可执行文件的支持从实验性的Spring Native 项目迁移到官方的Spring Boot GraalVM 原生镜像支持的过渡。

实际上,这意味着我们将 Spring Native GitHub 仓库存档并将其迁移到https://github.com/spring-attic 组织。不会有新的 Spring Native 版本发布(基于 Spring Boot 2.x),我们鼓励所有 Spring Boot 用户迁移到 Spring Boot 3.x 以利用其官方原生支持。

SpringOne

如果您错过了SpringOne 主题演讲,请注意,关于 Spring Boot 3 原生支持的部分录制视频分为两部分。

第一部分由 GraalVM 项目负责人 Thomas Wuerthinger 主讲,介绍了 Spring 和 GraalVM 团队之间互利的合作。 SpringOne 主题演讲,Thomas

以及第二部分由微软高级云倡导者 Sandra Ahlgrimm 主讲,介绍了如何在 Azure 上以零规模的方式运行 Spring 应用程序。 SpringOne 主题演讲,Sandra

您还可以观看从 Spring Native 到 Spring Boot 3的分组会议,由Moritz Halbritter 和我共同主持。

让我们庆祝一下!

每个 Spring 实验项目的目标都是达到通用可用性阶段,而 Spring Native 正是通过 Spring Boot 3 的原生支持实现了这一点。考虑到 Spring 产品组合中预期的质量水平以及我们必须解决的技术挑战,我们并不确定能否成功。但我们做到了!

因此,让我们借此机会与 Spring 社区和 Spring 团队一起庆祝这一成就,他们紧密合作,在 3237 次提交、330 个拉取请求和 2800 个 GitHub 星标之后,使原生成为 Spring 应用程序的一流编译目标。如果没有我们收到的所有有用的反馈,这是不可能实现的。

我要特别感谢Andy Clement,他最初贡献了大部分项目,还要感谢Stéphane NicollBrian Clozel,他们在使原生在 Spring Boot 3 中获得官方支持方面发挥了重要作用。

但我们也要庆祝我们现在拥有 Gradle 和 Maven 原生构建工具插件,以便为各种开源 JVM 库提供开箱即用的支持各种开源 JVM 库。到目前为止,Spring 一直是最多的贡献者,但我们看到越来越多的其他贡献者在拉取请求中来到GraalVM 元数据可达性存储库

Libraries and Frameworks Tested with Native Image

最好的部分是 Spring Boot 3 不需要任何 GraalVM 替换来修补 Spring 或 JVM 库。您运行的代码是您的开源库的代码,这意味着更好的安全性、更好的可调试性和更好的可维护性。

我们不能忘记我们在引入广泛的集成测试基础设施方面付出的所有精力,这通过spring-aot-smoke-tests 项目得以实现,该项目允许跟踪 AOT 和各种用例的原生支持状态。AOT 烟雾测试 CI

旅程仍在继续

由于其提前转换引擎,Spring Boot 3 提供的原生支持的质量已经比 Spring Native 好得多,但显然并不完美,因此我们将继续在每个 Spring Boot 修补程序版本中扩展支持范围,并改进 Spring 产品组合中的各种项目。我们很高兴能够从即将推出的 GraalVM 原生镜像编译器和工具改进中受益。

干杯!

获取 Spring 新闻通讯

随时关注 Spring 新闻通讯

订阅

领先一步

VMware 提供培训和认证,以加快您的进步。

了解更多

获取支持

Tanzu Spring在一个简单的订阅中提供对OpenJDK™、Spring和Apache Tomcat®的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部