Spring Cloud 服务发布:Angel.SR3

发布 | Dave Syer | 2015年6月26日 | ...

最新版本的 Spring Cloud 是 "Angel.SR3",现已从常用存储库中提供(请注意新的命名约定,下面有更多详细信息)。大多数组件现在都是 1.0.2.RELEASE,但 spring-cloud-netflix 为 1.0.3.RELEASE。启动器和 cli 也为 1.0.3.RELEASE,反映了它们对 Netflix 的依赖。Angel.SR3 是 Angel.SR2(以前称为 1.0.2)的错误修复版本,鼓励所有现有项目升级以利用这些改进。

有一些新功能,其中最大的是启动器父项目的新的命名约定(见下文)。亮点包括

  • 支持 git 标签中的斜杠(通过 HTTP 资源路径中的特殊字符序列)

  • Config Server 启动时可选的 git 初始化

  • 配置客户端自行处理解密的其他选项,包括能够在 bootstrap.yml 中解密属性的能力。

  • 用于新的 RSA 和 AES 算法的其他加密配置选项

  • 使用 TextEncryptorLocator 策略进行密钥轮换的策略,用户可以实现该策略以动态查找密钥。

发布列车

Spring Cloud 是一个包含独立项目的伞形项目,原则上这些项目具有不同的发布节奏。为了管理项目组合,会发布一个 BOM(物料清单),其中包含对各个项目的精选依赖项集(见下文)。发布列车使用名称而不是版本,以避免与子项目混淆。名称为字母顺序(因此您可以按时间顺序排序),并使用伦敦地铁站的名称(“Angel”是第一个版本,“Brixton”是第二个版本)。当各个项目的点版本累积到一定程度,或者其中一个项目存在需要向所有人提供的严重错误时,发布列车将推出以“.SRX”结尾的服务版本,其中“X”为数字。

发布列车是此版本(Angel.SR3)的新功能,但旧版本已重新发布(相同的工件,不同的版本)为“Angel,[RELEASE,SR1,SR2]”,分别对应于 1.0.0、1.0.1、1.0.2。发布列车标签实际上仅在一个工件中显式使用:“spring-cloud-starter-parent”(所有其他工件都具有与其父项目相关的普通“Spring”发布标签)。启动器父项目是您可以用作依赖项管理的 BOM 或父 POM(仅限 Maven)的项目。使用最新版本以及配置客户端和 eureka 的示例(更改工件 ID 以引入其他启动器),使用带有父 POM 的 Maven

<parent>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-parent</artifactId>
  <version>Angel.SR3</version>
</parent>
<dependencies>
  <dependency>
    <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-config</artifactId>
  </dependency>
  <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-eureka</artifactId>
  </dependency>
  ...
</dependencies>

或作为 BOM(仅限依赖项管理)

<dependencyManagement>
  <dependencies>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-parent</artifactId>
    <version>Angel.SR3</version>
    <type>pom</type>
    <scope>import</scope>
  </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-eureka</artifactId>
  </dependency>
  ...
</dependencies>

或使用 gradle

buildscript {
  dependencies {
    classpath "io.spring.gradle:dependency-management-plugin:0.4.0.RELEASE"
  }
}

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

dependencyManagement {
  imports {
    mavenBom 'org.springframework.cloud:spring-cloud:Angel.SR3'
  }
}

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

SpringOne 2015

我将在今年在华盛顿特区的 SpringOne 上讨论 Spring Cloud。我希望在那里见到你。

折扣

早鸟价(6 月 13 日至 8 月 14 日)可享受 150 美元的折扣。注册 4 人,第 5 人免费。请联系我们,告知您前 4 位注册者的姓名,以便获得免费通行证代码(仅限会议入场)。校友,请联系我们获取您的折扣代码(任何选项均可享受 150 美元的折扣)。

获取 Spring 电子邮件

通过 Spring 电子邮件保持联系

订阅

领先一步

VMware 提供培训和认证,助您快速提升技能。

了解更多

获取支持

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

了解更多

即将举行的活动

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

查看全部