2021-04-30 00:11:56 +08:00
[[getting-started.system-requirements]]
== System Requirements
2022-09-16 18:39:25 +08:00
Spring Boot {spring-boot-version} requires https://www.java.com[Java 17] and is compatible up to and including Java 19.
2021-04-30 00:11:56 +08:00
{spring-framework-docs}/[Spring Framework {spring-framework-version}] or above is also required.
Explicit build support is provided for the following build tools:
|===
| Build Tool | Version
| Maven
| 3.5+
| Gradle
2022-07-14 22:56:32 +08:00
| 7.x (7.5 or later)
2021-04-30 00:11:56 +08:00
|===
[[getting-started.system-requirements.servlet-containers]]
=== Servlet Containers
Spring Boot supports the following embedded servlet containers:
|===
| Name | Servlet Version
2021-12-01 04:32:16 +08:00
| Tomcat 10.0
| 5.0
2021-04-30 00:11:56 +08:00
2021-12-01 04:32:16 +08:00
| Jetty 11.0
| 5.1
2021-04-30 00:11:56 +08:00
2021-12-01 04:32:16 +08:00
| Undertow 2.2 (Jakarta EE 9 variant)
| 5.0
2021-04-30 00:11:56 +08:00
|===
2021-12-01 04:32:16 +08:00
You can also deploy Spring Boot applications to any servlet 5.0+ compatible container.
2022-10-17 07:43:35 +08:00
[[getting-started.system-requirements.graal]]
=== GraalVM Native Images
2022-10-21 00:45:10 +08:00
Spring Boot applications can be <<native-image#native-image.introducing-graalvm-native-images,converted into a Native Image>> using using GraalVM {graal-version} or above.
2022-10-17 07:43:35 +08:00
Images can be created using the https://github.com/graalvm/native-build-tools[native build tools] Gradle/Maven plugins or `native-image` tool provided by GraalVM.
You can also create native images using the the https://github.com/paketo-buildpacks/native-image[native-image Paketo buildpack].
The following versions are supported:
|===
| Name | Version
| GraalVM Community
| {graal-version}
| Native Build Tools
| {native-build-tools-version}
|===