-
Notifications
You must be signed in to change notification settings - Fork 40.8k
Spring Boot 2.4.0 M1 Release Notes
If you upgrade to Spring Boot 2.4 and see test compilation errors for JUnit classes such as org.junit.Test
, this may be because JUnit 5’s vintage engine has been removed from spring-boot-starter-test
. The vintage engine allows tests written with JUnit 4 to be run by JUnit 5.
If you do not want to migrate your tests to JUnit 5 and wish to continue using JUnit 4, add a dependency on the Vintage Engine, as shown in the following example for Maven:
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
</exclusion>
</exclusions>
</dependency>
If you are using Gradle, the equivalent configuration is shown in the following example:
testImplementation("org.junit.vintage:junit-vintage-engine") {
exclude group: "org.hamcrest", module: "hamcrest-core"
}
Spring Boot’s build no longer makes use of the Flatten Maven Plugin (flatten-maven-plugin
) and plugin management for it has been removed. If you were relying on Spring Boot’s managed version, you should add your own plugin management.
Reflecting Spring Boot 2.4’s move to a 6-month release cadence, code deprecated in Spring Boot 2.3 will not be removed until Spring Boot 2.5.
Tip
|
Check the configuration changelog for a complete overview of the changes in configuration. |
Spring Boot 2.4 will include Spring Framework 5.3, and this milestone upgrades to Spring Framework 5.3.0-M1. Please refer to this blog post to learn more.
Spring Boot 2.4 will include version 2020.0 (code-named Ockham) of the Spring Data release train, and this milestone includes M1. Please see this blog post to learn more.
Spring Boot will include Spring Batch 4.3, and this milestone upgrades to Spring Batch 4.3.0-M1. Please refer to this blog post to learn about what’s new in Spring Boot 4.3.0-M1.
Spring Boot 2.4 is tested against JDK 15 early-access builds. Full support will be provided once JDK 15 reaches general availability, at which point official support for JDK 14 will be dropped.
A new configuration property, spring.h2.console.settings.webAdminPassword
, for configuring H2 Console’s web admin password has been introduced. The password controls access to the console’s preferences and tools.
New CqlSession
based health indicators, CassandraDriverHealthIndicator
and CassandraDriverReactiveHealthIndicator
, have been introduced. One of these indicators will be auto-configured when Cassandra’s Java Driver is on the classpath but Spring Data Cassandra is not. When Spring Data Cassandra is present on the classpath, the existing Spring Data Cassandra-based health indicators are used as before.
The Actuator’s Prometheus endpoint, /actuator/prometheus
, now supports an includedNames
query parameter that can be used to filter the samples that are included in the response. See the Actuator API documentation for further details.
Spring Boot 2.4 moves to new versions of several Spring projects:
-
Reactor 2020.0
-
Spring AMQP 2.3
-
Spring Batch 4.3
-
Spring Data 2020.0
-
Spring Integration 5.4
-
Spring Retry 1.3
-
Spring Security 5.4
-
Spring Session 2020.0
Numerous third-party dependencies have also been updated, some of the more noteworthy of which are the following:
-
Artemis 2.13
-
Cassandra Driver 4.7
-
Flyway 6.5
-
Jersey 2.31
-
Liquibase 3.10
-
Oracle Database 19.7