Chinaunix首页 | 论坛 | 博客
  • 博客访问: 604959
  • 博文数量: 298
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 3077
  • 用 户 组: 普通用户
  • 注册时间: 2019-06-17 10:57
文章分类

全部博文(298)

文章存档

2022年(96)

2021年(201)

2019年(1)

我的朋友

分类: Java

2021-08-20 10:47:30

在集成nacos时,使用FeignClient请求接口时,报AbstractMethodError,首先反应这肯定是版本兼容的问题,但解决版本兼容也花了很久,试各种版本

错误如下:

点击(此处)折叠或打开

  1. Caused by: java.lang.AbstractMethodError: org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(Ljava/lang/String;Lorg/springframework/cloud/client/loadbalancer/Request;)Lorg/springframework/cloud/client/ServiceInstance;
  2.     at org.springframework.cloud.openfeign.loadbalancer.FeignBlockingLoadBalancerClient.execute(FeignBlockingLoadBalancerClient.java:88) ~[spring-cloud-openfeign-core-3.0.3.jar:3.0.3]
  3.     at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:119) ~[feign-core-10.12.jar:?]
  4.     at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:89) ~[feign-core-10.12.jar:?]
  5.     at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:100) ~[feign-core-10.12.jar:?]
  6.     at com.sun.proxy.$Proxy138.create2(Unknown Source) ~[?:?]
  7.     at com.mucang.demo.TestsController.create(TestsController.java:20) ~[classes/:?]
  8.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_301]
  9.     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_301]
  10.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_301]
  11.     at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_301]
  12.     at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197) ~[spring-web-5.3.9.jar:5.3.9]
  13.     at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141) ~[spring-web-5.3.9.jar:5.3.9]
  14.     at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106) ~[spring-webmvc-5.3.9.jar:5.3.9]
  15.     at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) ~[spring-webmvc-5.3.9.jar:5.3.9]
  16.     at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) ~[spring-webmvc-5.3.9.jar:5.3.9]
  17.     at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.3.9.jar:5.3.9]
  18.     at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1064) [spring-webmvc-5.3.9.jar:5.3.9]
  19.     ... 47 more

原因: 在引入nacos-discovery时自动会引入ribbion,(项目 fhadmin.cn)但引入的版本与springcloud引入的openfeign版本不匹配导致异常

点击(此处)折叠或打开

  1. <dependency>
  2.       <groupId>com.alibaba.cloud</groupId>
  3.       <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
  4. </dependency>

解决:


更换版本至匹配 , 以下是我用的版本

点击(此处)折叠或打开

  1. spring-cloud-alibaba-dependencies 2021.1
  2. spring-boot-starter-parent 2.4.9
  3. spring-cloud-dependencies 2020.0.3



 

阅读(784) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~