先行一步
VMware 提供培训和认证,助您加速进步。
了解更多我代表社区高兴地宣布,以下版本今天正式发布:Spring Cloud Greenwich 版本系列的 Service Release 6 (SR6),Spring Cloud Hoxton 版本系列的 Service Release 5 (SR5),以及 Spring Cloud 2020.0(代号 Ilford
)版本系列的 Milestone 2 (M2)。Greenwich 和 Hoxton 版本可在 Maven Central 这里和 这里找到。Ilford
里程碑版本可在 Spring Milestone 仓库中找到。您可以查看各个版本的发布说明以获取更多信息:Greenwich.SR6、Hoxton.SR5 和 2020.0.0-M2。
一如既往,我们欢迎在 GitHub、Gitter、Stack Overflow 或 Twitter 上提供反馈。
Greenwich 与 Spring Boot 2.1.x 兼容。
CVE-2020-5410: 使用 spring-cloud-config-server 的目录遍历漏洞
回溯了启动属性源排序修复。
以下模块作为 Greenwich.SR6 的一部分进行了更新
| 模块 | 版本 | 问题 |--- |--- |--- |--- | Spring Cloud Config | 2.1.8.RELEASE |
| Spring Cloud Commons | 2.1.6.RELEASE | (问题)
使用 BOM (仅依赖管理) 开始使用 Maven
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.SR6</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
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE"
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Greenwich.SR6'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
//...
}
Hoxton.SR5 与 Spring Boot 2.3.x 和 2.2.x 都兼容。之前的 Hoxton 版本仅与 Spring Boot 2.2.x 兼容。
Spring Cloud CLI 没有作为 Hoxton.SR5 的一部分发布,请期待 Hoxton.SR6 的发布。
增加了对 Spring Cloud LoadBalancer 的支持。请参阅发布说明以获取有关升级和 Spring Cloud Contract Gradle Plugin 中微小的 API 更改的信息。
健康端点增加了标签。
增加了构建器以配置 Spring Cloud LoadBalancer 以及预配置的 LoadBalancers。调整了 LoadBalancer 缓存机制以支持 HealthCheckInstanceListSupplier
。增加了对不可枚举属性源的支持。增加了对缓存随机属性源的支持,因此具有随机值的服务实例 ID 在刷新事件期间不会被重新定义。请参阅发布说明以获取有关两个属性默认值更改的信息。
Eureka Client 现在在启动期间使用 Eureka HTTP API,因此实例不会被注册后又取消注册。
增加了对 Consul 元数据的支持,而不是标签中的元数据。
更新了对 Vault Azure MSI 认证的支持。
增加了对自定义 Host 头的支持。
增加了 CuratorFrameworkCustomizer
以允许用户在自动配置后自定义 Curator。
@RemoteApplicationEventsScan
的结果现在是累积的。RefreshRemoteApplicationEvent
只有在被指定目标时才会在本地处理。
增加了对 Spring Data 分页排序的支持。增加了禁用单个 feign 客户端的父上下文的支持。增加了 ErrorDecoderFactory
。
ExceptionLoggingFilter
默认被禁用。
以下模块作为 Hoxton.SR5 的一部分进行了更新
| 模块 | 版本 | 问题 |--- |--- |--- |--- | Spring Cloud Contract | 2.2.3.RELEASE | (问题) | Spring Cloud Kubernetes | 1.1.3.RELEASE | (问题) | Spring Cloud Cloudfoundry | 2.2.2.RELEASE | (问题) | Spring Cloud Commons | 2.2.3.RELEASE | (问题) | Spring Cloud Starter Build | Hoxton.SR5 |
| Spring Cloud Netflix | 2.2.3.RELEASE | (问题) | Spring Cloud Consul | 2.2.3.RELEASE | (问题) | Spring Cloud Config | 2.2.3.RELEASE | (问题) | Spring Cloud Gateway | 2.2.3.RELEASE | (问题) | Spring Cloud Gcp | 1.2.3.RELEASE |
| Spring Cloud Zookeeper | 2.2.2.RELEASE | (问题) | Spring Cloud Vault | 2.2.3.RELEASE | (问题) | Spring Cloud Circuitbreaker | 1.0.3.RELEASE | (问题) | Spring Cloud Bus | 2.2.2.RELEASE | (问题) | Spring Cloud Security | 2.2.2.RELEASE | (问题) | Spring Cloud Openfeign | 2.2.3.RELEASE | (问题) | Spring Cloud Aws | 2.2.2.RELEASE | (问题) | Spring Cloud Sleuth | 2.2.3.RELEASE | (问题)
使用 BOM (仅依赖管理) 开始使用 Maven
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Hoxton.SR5</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
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE"
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Hoxton.SR5'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
//...
}
Eureka Client 现在默认使用 WebClient
或 RestTemplate
,而不是 Jersey。
Zipkin 依赖已从核心中移除。
增强了 Java Route DSL,使其不会泄露 Route 方法。这有助于避免在使用 DSL 时产生混淆。
spring.cloud.loadbalancer.health-check.initial-delay
配置从 int
更改为 Duration
。
Targeter
接口和 FeignClientFactoryBean
被公开。
以下模块作为 2020.0.0-M2 的一部分进行了更新
| 模块 | 版本 | 问题 |--- |--- |--- |--- | Spring Cloud Netflix | 3.0.0-M2 |
| Spring Cloud Sleuth | 3.0.0-M2 |
| Spring Cloud Consul | 3.0.0-M2 |
| Spring Cloud Kubernetes | 2.0.0-M2 |
| Spring Cloud Gateway | 3.0.0-M2 | (问题) | Spring Cloud Circuitbreaker | 2.0.0-M2 |
| Spring Cloud Contract | 3.0.0-M2 | (问题) | Spring Cloud Starter Build | 2020.0.0-M2 |
| Spring Cloud Config | 3.0.0-M2 |
| Spring Cloud Build | 3.0.0-M2 |
| Spring Cloud Cloudfoundry | 3.0.0-M2 |
| Spring Cloud Security | 3.0.0-M2 |
| Spring Cloud Bus | 3.0.0-M2 |
| Spring Cloud Cli | 3.0.0-M2 |
| Spring Cloud Vault | 3.0.0-M2 |
| Spring Cloud Zookeeper | 3.0.0-M2 |
| Spring Cloud Commons | 3.0.0-M2 |
| Spring Cloud Openfeign | 3.0.0-M2 |
使用 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>2020.0.0-M2</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
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE"
}
}
repositories {
maven {
url 'https://repo.spring.io/milestone'
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:2020.0.0-M2'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
//...
}