手里有个Spring Cloud的工程,是服务提供者的身份,在pom.xml中配置的Spring Cloud版本是Dalston.SR5,要升级到Edgware.RELEASE,有一处依赖包的改动需要注意;
pom.xml中和Spring Cloud相关的配置如下图所示,红框中是当前版本,绿框中是服务注册相关的starter依赖:
第一步:将版本号改为Edgware.RELEASE如下图:
第二步:将依赖包中的spring-cloud-starter-eureka改为spring-cloud-starter-netflix-eureka-client,如下图:
用spring-cloud-starter-netflix-eureka-client替代spring-cloud-starter-eureka的原因,来自以下几方面信息:
1. Maven中央仓库,地址是:https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-eureka-server,上面注明了spring-cloud-starter-eureka-server已经废弃,建议使用spring-cloud-starter-netflix-eureka-server,如下图:
2. Dalston.SR5版本的Spring Cloud,对应的spring-cloud-netflix库是1.3.6.RELEASE版本,其官方文档中建议我们使用spring-cloud-starter-eureka,文档地址:https://cloud.spring.io/spring-cloud-static/spring-cloud-netflix/1.3.6.RELEASE/multi/multi__service_discovery_eureka_clients.html#netflix-eureka-client-starter,如下图:
3. Edgware.RELEASE版本的Spring Cloud,对应的spring-cloud-netflix库是1.4.0.RELEASE版本,其官方文档中建议我们使用spring-cloud-starter-netflix-eureka-client,文档地址:https://cloud.spring.io/spring-cloud-netflix/1.4.x/multi/multi__service_discovery_eureka_clients.html,如下图:
4. 为了有更直观的认识,我们去看下官方示例spring-cloud-samples/customers-stores,其中有从Dalston.BUILD-SNAPSHOT升级到Finchley.SR1的修改记录,地址是:https://github.com/spring-cloud-samples/customers-stores/commit/79f736fcc13562c14464a4b2b0025d3006c316ad,如下图所示,红框代表删除行,绿框代表新增行:
5. 最全面的信息来自官方的版本发布信息,地址是:https://github.com/spring-projects/spring-cloud/wiki/Spring-Cloud-Edgware-Release-Notes,其他需要修改的依赖模块ID也都在列表中,如下图:
小结:官方文档和demo是最可靠的信息来源,涉及到升级操作时,最好把关键项列出来,去官方文档中确认一下;