spring cloud 微服务启动报错终极解决方案

今天在开发一个spring cloud 的微服务的时候,启动报如下错误

org.springframework.core.annotation.AnnotationConfigurationException: Attribute 'value' in annotation [org.springframework.cloud.netflix.feign.FeignClient] must be declared as an @AliasFor [serviceId], not [name].
	at org.springframework.core.annotation.AnnotationUtils$AliasDescriptor.validate(AnnotationUtils.java:2154) ~[spring-core-4.3.17.RELEASE.jar:4.3.17.RELEASE]
	at org.springframework.core.annotation.AnnotationUtils$AliasDescriptor.from(AnnotationUtils.java:2093) ~[spring-core-4.3.17.RELEASE.jar:4.3.17.RELEASE]
	at org.springframework.core.annotation.AnnotationUtils.getAttributeAliasNames(AnnotationUtils.java:1748) ~[spring-core-4.3.17.RELEASE.jar:4.3.17.RELEASE]
	at org.springframework.core.annotation.AnnotationUtils.getAttributeAliasMap(AnnotationUtils.java:1661) ~[spring-core-4.3.17.RELEASE.jar:4.3.17.RELE

然后检查了各种配置均没有发现问题,最终怀疑到依赖版本上,经过一番文档的搜索,最后发现确实是版本问题

我用的spring boot 1.5.3 realease,spring cloud版本用的是 Brixton.RELEASE,这两个版本不兼容,导致了上面的错误

解决办法是把Brixton.RELEASE 版本替换成 Dalston.SR5

替换完后,重新运行,问题就解决了!

spring boot 跟 spring cloud的版本对应关系如下

spring boot spring cloud
Spring Boot 1.2.x Angel
Spring Boot 1.3.x Brixton
Spring Boot 1.4.x Camden
Spring Boot 1.5.x Dalston和Edgware
Spring Boot 2.0.x Finchley
   
   
   
   

原创博文,转发请标明出处,谢谢!

来自EDSE的创作





你可能感兴趣的:(spring,cloud)