Get ahead
VMware offers training and certification to turbo-charge your progress.
Learn moreOn behalf of the community, I am pleased to announce that the Service Release 3 (SR3) of the Spring Cloud Greenwich Release Train is available today. The release can be found in Maven Central. You can check out the Greenwich release notes for more information. All issues closed in this release across all projects can be found in the Spring Cloud Greenwich.SR3 project on GitHub
Spring Cloud Greenwich.M3 is the first release containing both blocking and non-blocking load balancer client implementations as an alternative to Netflix Ribbon which has entered maintenance mode.
To use the new BlockingLoadBalancerClient
with a RestTemplate
you will need to include org.springframework.cloud:spring-cloud-loadbalancer
on your application’s classpath. The same dependency can be used in a reactive application when using @LoadBalanced WebClient.Builder
- the only difference is that Spring Cloud will auto-configure a ReactorLoadBalancerExchangeFilterFunction
instance. See the documentation for additional information. The new ReactorLoadBalancerExchangeFilterFunction
can also be autowired and passed directly to WebClient.Builder
(see the documentation). For all these features, Project Reactor-based RoundRobinLoadBalancer
is used underneath.
DiscoveryClient
implementation can now retrieve services from all namespaces/actuator/gateway/routes
JerseyReplicationClient
used by EurekaThe following modules were updated as part of Greenwich.SR3:
| Module | Version | Issues
|--- |--- |--- |---
| Spring Cloud Commons | 2.1.3.RELEASE | (issues)
| Spring Cloud Openfeign | 2.1.3.RELEASE | (issues)
| Spring Cloud Security | 2.1.4.RELEASE | (issues)
| Spring Cloud Stream | Fishtown.SR4 |
| Spring Cloud Kubernetes | 1.0.3.RELEASE | (issues)
| Spring Cloud Build | 2.1.7.RELEASE |
| Spring Cloud Zookeeper | 2.1.3.RELEASE |
| Spring Cloud Gateway | 2.1.3.RELEASE | (issues)
| Spring Cloud Dependencies | Greenwich.SR3 |
| Spring Cloud Netflix | 2.1.3.RELEASE | (issues)
| Spring Cloud Bus | 2.1.3.RELEASE | (issues)
| Spring Cloud Dependencies Parent | 2.1.7.RELEASE |
| Spring Cloud Task | 2.1.3.RELEASE |
| Spring Cloud Starter | Greenwich.SR3 |
| Spring Cloud Cloudfoundry | 2.1.3.RELEASE |
| Spring Cloud | Greenwich.SR3 |
| Spring Cloud Vault | 2.1.3.RELEASE |
| Spring Cloud Config | 2.1.4.RELEASE | (issues)
| Spring Cloud Release | Greenwich.SR3 |
| Spring Cloud Function | 2.0.2.RELEASE | (issues)
| Spring Cloud Consul | 2.1.3.RELEASE | (issues)
| Spring Cloud Starter Parent | Greenwich.SR3 |
| Spring Cloud Gcp | 1.1.3.RELEASE |
| Spring Cloud Sleuth | 2.1.3.RELEASE |
| Spring Cloud Aws | 2.1.3.RELEASE |
| Spring Cloud Contract | 2.1.3.RELEASE | (issues)
As always, we welcome feedback on GitHub, on Gitter, on Stack Overflow, or on Twitter.
To get started with Maven with a BOM (dependency management only):
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.SR3</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:
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.2.RELEASE"
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Greenwich.SR3'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
...
}