Get ahead
VMware offers training and certification to turbo-charge your progress.
Learn moreOn behalf of the community, I am pleased to announce the General Availability (GA) of the Spring Cloud 2025.0.0 Release Train is available today. The release can be found in Maven Central. You can check out the 2025.0.0 release notes for more information.
This release is compatible with Spring Boot 3.5.0. See all issues and pull requests that are part of the release here. Below are highlights from all the milestones leading up to the GA release.
WebClientRouting
infrastructure. This will be removed in 5.0 later this year. #3680Deprecated Artifact | New Artifact |
---|---|
spring-cloud-gateway-server | spring-cloud-gateway-server-webflux |
spring-cloud-gateway-server-mvc | spring-cloud-gateway-server-webmvc |
spring-cloud-starter-gateway-server | spring-cloud-starter-gateway-server-webflux |
spring-cloud-starter-gateway-server-mvc | spring-cloud-starter-gateway-server-webmvc |
spring-cloud-gateway-mvc | spring-cloud-gateway-proxyexchange-webmvc |
spring-cloud-gateway-webflux | spring-cloud-gateway-proxyexchange-webflux |
spring-boot-properties-migrator
to support the deprecated prefixes. The table below lists the module or starter, its old prefix, and the new replacement prefix.Module/Starter | Deprecated prefix | New prefix |
---|---|---|
spring-cloud-starter-gateway-server-webflux | spring.cloud.gateway.* | spring.cloud.gateway.server.webflux.* |
spring-cloud-starter-gateway-server-webmvc | spring.cloud.gateway.mvc.* | spring.cloud.gateway.server.webmvc.* |
spring-cloud-gateway-proxyexchange-webflux | spring.cloud.gateway.proxy.* | spring.cloud.gateway.proxy-exchange.webflux.* |
spring-cloud-gateway-proxyexchange-webmvc | spring.cloud.gateway.proxy.* | spring.cloud.gateway.proxy-exchange.webmvc.* |
X-Forwarded-*
and Forwarded
header functionality will be disabled by default with the fix versions. If you require X-Forwarded-*
or Forwarded
header functionality, set spring.cloud.gateway.server.webflux.trusted-proxies
to a Java Regular Expression that specifies the proxies whose headers you trust. If you are using Spring Cloud Gateway Server MVC (only available from 4.1.x onward) set spring.cloud.gateway.mvc.trusted-proxies
. For example for Spring Cloud Gateway Server:spring.cloud.gateway.server.webflux.trusted-proxies=10\.0\.0\..*
For example, for Spring Cloud Gateway Server WebMVC:
spring.cloud.gateway.server.webmvc.trusted-proxies=10\.0\.0\..*
Support YAML specific profile documents in AWS S3 buckets (#2825).
RequestConfig
in EurekaClientHttpRequestFactorySupplier
#4391.The following modules were updated as part of 2025.0.0:
Module | Version | Issues |
---|---|---|
Spring Cloud Config | 4.3.0 | (issues) |
Spring Cloud Build | 4.3.0 | (issues) |
Spring Cloud Openfeign | 4.3.0 | (issues) |
Spring Cloud Stream | 4.3.0 | (issues) |
Spring Cloud Netflix | 4.3.0 | (issues) |
Spring Cloud Commons | 4.3.0 | (issues) |
Spring Cloud Circuitbreaker | 3.3.0 | (issues) |
Spring Cloud Contract | 4.3.0 | (issues) |
Spring Cloud Consul | 4.3.0 | (issues) |
Spring Cloud Gateway | 4.3.0 | (issues) |
Spring Cloud Vault | 4.3.0 | (issues) |
Spring Cloud Starter Build | 2025.0.0 | (issues) |
Spring Cloud Function | 4.3.0 | (issues) |
Spring Cloud Task | 3.3.0 | (issues) |
Spring Cloud Kubernetes | 3.3.0 | (issues) |
Spring Cloud Bus | 4.3.0 | (issues) |
Spring Cloud Zookeeper | 4.3.0 | (issues) |
As always, we welcome feedback on GitHub, on Gitter, on Stack Overflow, or on X.
To get started with Maven with a BOM (dependency management only):
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>2025.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
...
</dependencies>
or with Gradle:
plugins {
id 'java'
id 'org.springframework.boot' version '3.5.0'
id 'io.spring.dependency-management' version '1.1.7'
}
//...
ext {
set('springCloudVersion', "2025.0.0")
}
dependencies {
implementation 'org.springframework.cloud:spring-cloud-starter-config'
implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
//...
}
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
}
}
//...