Skip to content

系统要求 (System Requirements)

Spring Boot 4.0.1 需要至少 Java 17,并兼容至 Java 25(含)。此外还需要 Spring Framework 7.0.2 或更高版本。

构建工具

Spring Boot 为以下构建工具提供显式支持:

构建工具版本
Maven3.6.3 或更高版本
Gradle8.x (8.14 或更高) 以及 9.x

Servlet 容器

Spring Boot 支持以下嵌入式 Servlet 容器:

名称Servlet 版本
Tomcat 11.0.x6.1
Jetty 12.1.x6.1

你也可以将 Spring Boot 应用程序部署到任何兼容 Servlet 6.1+ 的容器中。

GraalVM 原生镜像

使用 GraalVM 25 或更高版本,可以将 Spring Boot 应用程序转换为原生镜像 (Native Image)

你可以使用 原生构建工具 (Native Build Tools) 的 Gradle/Maven 插件,或 GraalVM 提供的 native-image 工具来创建镜像。同样也可以使用 native-image Paketo buildpack

目前支持以下版本:

名称版本
GraalVM Community25
Native Build Tools0.11.3

补充教学

1. 为什么 Spring Boot 4.x 坚持 Java 17+?

Java 17 是一个长期支持版本 (LTS),它引入了 Sealed Classes、Records 等许多现代 Java 特性。Spring 框架 7.x 利用了这些特性来优化性能并简化内部架构。Java 8 和 Java 11 虽然经典,但已无法发挥现代硬件和编译器的最大效能。

2. Servlet 6.1 与虚拟线程 (Virtual Threads)

Java 21 引入了虚拟线程,彻底改变了高并发下的处理模型。Servlet 6.1 和 Spring Boot 4.x 深度适配了这一特性。如果你在 Java 21+ 环境下运行,Spring Boot 可以通过更少的线程处理更多的并发请求,大幅降低内存占用。

3. 原生镜像 (Native Image) 的意义

传统的 Java 程序启动慢且占用内存高。原生镜像在编译期就完成了类加载和初始化,产出的是二进制机器码。

  • 启动速度:从秒级提升到毫秒级。
  • 内存占用:极大幅度降低。
  • 应用场景:非常适合 Serverless 冷启动或资源受限的边端设备。

4. 版本的选择建议

对于新项目,强烈建议直接使用 Java 21 (LTS) 配合 Spring Boot 4.x。这能让你享受到虚拟线程、更先进的 GC 算法以及最优的云原生支持。

Based on Spring Framework.