Spring Cloud Finchley.M5 发布

发布 | Spencer Gibb | 2017年12月5日 | ...

我代表团队和社区,很高兴地宣布 Spring Cloud Finchley 发布列车的里程碑版本 5 (M5) 今天已发布。该版本可以在 Spring Milestone 存储库中找到。您可以查看 Finchley 的 发行说明以获取更多信息

Finchley 发布列车的显著变化

此更新包含与 Spring Boot 2.0.0.M7 兼容的更改。

Spring Cloud Sleuth

通过 @Async 创建的跨度现在始终继续父跨度,而不是创建一个新的跨度。

Spring Cloud Gateway

Java 流式 API 已更新,以提供更好的开发人员体验。现在可以通过 IDE 的代码完成来发现所有断言和过滤器,而不是通过静态导入。现在可以使用 RouteLocatorBuilder 进行注入,它是 DSL 的主要入口点。不再需要 ID(如果未提供,将生成一个随机 ID)。

@Bean
public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {
  return builder.routes()
      .route(r -> r.host("**.abc.org").and().path("/image/png")
          .addResponseHeader("X-TestHeader", "foobar")
          .uri("http://httpbin.org:80")
      )
      .route("webp", r -> r.path("/image/webp")
        .addResponseHeader("X-AnotherHeader", "baz")
        .uri("http://httpbin.org:80")
      )
}

Kotlin DSL 也以类似的方式进行了更新。

@Bean
fun additionalRouteLocator(builder: RouteLocatorBuilder): RouteLocator = builder.routes {
  route() {
    host("kotlin.abc.org") and path("/image/png")
    filters {
      addResponseHeader("X-TestHeader", "foobar")
    }
    uri("http://httpbin.org:80")
  }
}

Spring Cloud Netflix

升级到最新的 Eureka。

Spring Cloud Bus

引入了新的 spring.cloud.bus.id 用于处理总线实例,而不是 ApplicationContext ID,后者需要在服务的每个实例中唯一。此更改应该向后兼容。

Spring Cloud Commons

引入了一个新属性以禁用刷新范围:spring.cloud.refresh.enabled

Finchley.M5 中更新的模块

模块 版本
Spring Cloud 依赖项 2.0.0.M6
Spring Cloud Consul 2.0.0.M4
Spring Cloud Sleuth 2.0.0.M5
Spring Cloud Gateway 2.0.0.M5
Spring Cloud Zookeeper 2.0.0.M4
Spring Cloud Cloudfoundry 2.0.0.M2
Spring Cloud Netflix 2.0.0.M5
Spring Cloud Contract 2.0.0.M5
Spring Cloud Security 2.0.0.M1
Spring Cloud Task 2.0.0.M2
Spring Boot 依赖项 2.0.0.M7
Spring Cloud Stream Elmhurst.M3
Spring Cloud Bus 2.0.0.M4
Spring Cloud Aws 2.0.0.M2
Spring Cloud Config 2.0.0.M5
Spring Boot Starter 2.0.0.M7
Spring Cloud Build 2.0.0.M6
Spring Cloud Vault 2.0.0.M4
Spring Cloud Commons 2.0.0.M5
Spring Boot 2.0.0.M7

反馈

与往常一样,我们欢迎您在 GitHubGitterStack OverflowTwitter 上提供反馈。

要使用 Maven 和 BOM(仅依赖项管理)开始使用

<repositories>
    <repository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>http://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>Finchley.M5</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.2.RELEASE"
    }
}

repositories {
    maven {
        url 'http://repo.spring.io/milestone'
    }
}

apply plugin: "io.spring.dependency-management"

dependencyManagement {
    imports {
        mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Finchley.M5'
    }
}

dependencies {
    compile 'org.springframework.cloud:spring-cloud-starter-config'
    compile 'org.springframework.cloud:spring-cloud-starter-eureka'
    ...
}

获取 Spring 电子邮件简报

通过 Spring 电子邮件简报保持联系

订阅

领先一步

VMware 提供培训和认证,以加速您的进步。

了解更多

获取支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部