Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/spring-projects/spring-boot/llms.txt

Use this file to discover all available pages before exploring further.

Spring Boot’s dependency management system removes the burden of choosing compatible library versions for your project. By inheriting from spring-boot-starter-parent (or importing the spring-boot-dependencies BOM), you get a curated set of dependency versions that have been tested together — covering everything from the Spring Framework itself to Jackson, Hibernate, Kafka, and hundreds of other libraries. You only need to declare a dependency’s group ID and artifact ID; the version is resolved automatically from the BOM.

How dependency management is applied

<parent>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-parent</artifactId>
  <version>4.1.0</version>
</parent>

<dependencies>
  <!-- Version is managed by the parent — no <version> needed -->
  <dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
  </dependency>
</dependencies>

Overriding a managed version

You can override any managed dependency version in your own project without forking the BOM.
<properties>
  <!-- Override the managed Jackson version -->
  <jackson-bom.version>2.18.0</jackson-bom.version>
</properties>
Each managed dependency has a corresponding version property you can override. Browse the full list with:
mvn dependency:tree -Dincludes=com.fasterxml.jackson
Overriding a managed version bypasses Spring Boot’s compatibility testing for that library. Test your application thoroughly after any version override, especially for transitive dependencies that may also be affected.

Inspecting the full BOM

To see all dependency versions managed for your project:
# Maven — show all resolved dependencies
mvn dependency:tree

# Maven — show effective POM with all managed versions
mvn help:effective-pom

# Gradle — show resolved versions for a configuration
./gradlew dependencies --configuration runtimeClasspath
You can also browse the spring-boot-dependencies BOM source directly on GitHub to see the full list of managed coordinates and their versions.

Managed dependency versions in Spring Boot 4.1

The versions below are read directly from gradle.properties and the spring-boot-dependencies BOM in the Spring Boot 4.1.0-SNAPSHOT source tree.
LibraryVersionNotes
Spring Framework7.0.7Core dependency — includes WebMVC, WebFlux, JDBC, etc.
Spring Boot4.1.0-SNAPSHOTThis release.
Spring Security7.1.0-RC1Servlet and reactive security.
Spring Data BOM2026.0.0-RC1JPA, MongoDB, Redis, JDBC, R2DBC, and more.
Spring AMQP4.1.0-RC1RabbitMQ support.
Spring Kafka4.1.0-RC1Apache Kafka support.
Spring Batch6.0.3Batch processing framework.
Spring Integration7.1.0-RC1Enterprise integration patterns.
Spring HATEOAS3.1.0-RC1Hypermedia support for REST.
Spring Session4.1.0-RC1HTTP session management.
Spring LDAP4.1.0-RC1LDAP/Active Directory support.
Spring GraphQL2.0.4-SNAPSHOTGraphQL over HTTP and WebSocket.
Spring gRPC1.1.0-RC1gRPC server and client support.
Spring WS5.0.1Web Services (SOAP) support.
Spring RESTDocs4.0.0API documentation from tests.
Spring Pulsar2.0.5Apache Pulsar messaging.
LibraryVersionNotes
Jackson BOM (Jackson 3)3.1.3Default Jackson version for Spring Boot 4.1.
Jackson 2 BOM2.21.3Legacy Jackson 2 support.
Gson2.13.2Google’s JSON library.
SnakeYAML2.6YAML parser used by Spring Boot configuration.
Yasson3.0.4JSON-B reference implementation.
LibraryVersionNotes
JUnit Jupiter6.0.3JUnit 5 test engine.
Mockito5.23.0Mocking framework.
AssertJ3.27.7Fluent assertion library.
Hamcrest3.0Matcher library.
Testcontainers2.0.5Integration testing with Docker containers.
Awaitility4.3.0DSL for testing asynchronous code.
Selenium4.43.0Browser automation for UI tests.
HtmlUnit4.21.0Headless browser for web testing.
XmlUnit22.11.0XML comparison and assertions.
LibraryVersionNotes
Hibernate ORM7.2.13.FinalJPA provider.
HikariCP7.0.2Default JDBC connection pool.
Flyway12.4.0Database migration.
LiquibaseDatabase migration (managed by Liquibase BOM).
H22.4.240Embedded database for testing.
PostgreSQL JDBC42.7.11PostgreSQL driver.
MySQL Connector/J9.7.0MySQL driver.
MariaDB Connector/JMariaDB driver.
MSSQL JDBC13.4.0.jre11Microsoft SQL Server driver.
Cassandra Driver4.19.2DataStax Cassandra driver.
MongoDB Driver5.7.0-beta1MongoDB sync and reactive drivers.
Elasticsearch Client9.3.4Official Elasticsearch Java client.
Neo4j Java Driver6.0.5Neo4j graph database driver.
Jedis7.4.1Redis client (Jedis).
R2DBC Pool1.0.2.RELEASEReactive connection pooling.
jOOQSQL DSL (version managed by jOOQ BOM).
LibraryVersionNotes
Micrometer1.17.0-RC1Application metrics facade.
Micrometer Tracing1.7.0-RC1Distributed tracing abstraction.
OpenTelemetry1.60.1OpenTelemetry SDK for metrics, traces, and logs.
Brave6.3.1Zipkin tracing implementation.
Zipkin Reporter3.5.3Zipkin span reporting.
Prometheus Client1.5.1Prometheus metrics client.
LibraryVersionNotes
Rabbit AMQP Client5.30.0RabbitMQ AMQP client library.
ActiveMQ Classic6.2.5Apache ActiveMQ Classic JMS.
Artemis BOM2.53.0Apache ActiveMQ Artemis.
Apache Pulsar4.2.1Apache Pulsar client.
RSocket1.1.5RSocket protocol implementation.
LibraryVersionNotes
Tomcat11.0.22Default embedded servlet container.
Netty4.2.13.FinalAsync networking framework used by WebFlux.
Reactor BOM2025.0.5Project Reactor (Flux, Mono, etc.).
HttpClient55.6.1Apache HttpComponents 5 client.
Grpc Java1.80.0gRPC Java runtime.
LibraryVersionNotes
Kotlin2.3.21Kotlin language runtime.
Groovy5.0.6Groovy scripting language.
AspectJ1.9.25.1AOP weaving support.
Caffeine3.2.4High-performance in-process cache.
Hazelcast5.5.0In-memory data grid and distributed cache.
Quartz2.5.2Job scheduling framework.
Thymeleaf3.1.5.RELEASEServer-side Java template engine.
FreeMarker2.3.34FreeMarker template engine.
SLF4J2.0.17Logging facade.
Byte Buddy1.18.8Runtime code generation (used by Mockito).
Native Build Tools1.1.0GraalVM native image build tooling.
Versions marked as -RC1, -SNAPSHOT, or -beta in the source tree will be finalized before the Spring Boot 4.1 GA release. Pin specific versions in your project if you need a stable version before GA.

Build docs developers (and LLMs) love