
我谨代表社区高兴地宣布 Spring Cloud 2025.0.0 Release Train 的正式发布 (GA) 现已推出。可以在 Maven Central 中找到该版本。有关更多信息,您可以查看 2025.0.0 发行说明。
2025.0.0 版本系列中的显著更改
此版本与 Spring Boot 3.5.0 兼容。在此处查看版本中的所有议题和拉取请求。以下是 GA 发布之前所有里程碑的亮点。
Spring Cloud 网关
- 新增对 spring-cloud-function 和 spring-cloud-stream 处理程序的支持 #3646。
- 在服务器 webflux 中添加了对 Bucket4jRateLimiter 的支持 #2955。
- 弃用WebClientRouting基础设施。这将在今年晚些时候的 5.0 中删除。排名 #3680
- 已创建新的 Module 和 Starter 名称,旧名称已弃用。下表列出了新的和已弃用的构件 #3645。这些新名称阐明了两种类型的网关(服务器或代理交换)以及 Spring Framework 中的两个 Web 堆栈(Web MCV 和 WebFlux)。使用已弃用的项目将在日志中添加一条警告消息。
| Deprecated 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 |
迁移到新的属性前缀以匹配新的模块名称:#3361、#3362、#3363、#3647。用spring-boot-properties-migrator支持已弃用的前缀。下表列出了模块或启动器、其旧前缀和新的替换前缀。
| 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-* 和 Forwarded 标头功能。如果需要X-Forwarded-* 或Forwarded 标头功能,请设置为 Java 正则表达式,以指定您信任的标头的代理。如果您使用的是 Spring Cloud Gateway Server MVC(仅适用于 4.1.x 以上),请设置spring.cloud.gateway.mvc.trusted-proxies 。例如,对于 Spring Cloud Gateway Server:
spring.cloud.gateway.server.webflux.trusted-proxies=10\.0\.0\..*
例如,对于 Spring Cloud Gateway Server WebMVC:
spring.cloud.gateway.server.webmvc.trusted-proxies=10\.0\.0\..*
Spring Cloud 配置
在 AWS S3 存储桶中支持 YAML 特定的配置文件文档 (#2825)。
Spring Cloud Kubernetes
Spring Cloud 断路器
- 添加了对反应式 bulkheads 的支持 #231。
Spring Cloud Netflix
- 允许在
RequestConfigEurekaClientHttpRequestFactorySupplier中自定义 Apache HTTP Client 5#4391 。
以下模块已作为 2025.0.0 的一部分进行了更新:
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) |
与往常一样,我们欢迎在 GitHub、Gitter、Stack Overflow 或 X 上提供反馈。
要开始使用带有 BOM 的 Maven(仅限依赖项管理):
<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>
或使用 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}"
}
}
//...
转自 Spring Cloud 2025.0.0 (aka Northfields) has been released
Linuxeden开源社区