openfeige和nacos的版本冲突问题解决

查了很多资料,发现是因为Spring Cloud Feign在Hoxton.M2 RELEASED版本之后不再使用Ribbon而是使用spring-cloud-loadbalancer,所以不引入spring-cloud-loadbalancer会报错

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-loadbalancer</artifactId>
</dependency>

这个时候还有一个坑就是当我们调用feign的时候还会抱一个错误:
java.lang.AbstractMethodError: org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose
解决办法:nacos中ribbon会造成loadbalanc包失效,所以我们需要在nacos的依赖中过滤掉ribbon才行

    <dependency>
          <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
                </exclusion>
            </exclusions>
    </dependency>

也是有够坑的,差不多坑了两天的空余时间,记录一下

作者:小方块886
链接:https://www.jianshu.com/p/8b7dc64f57f6
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

上一篇:负载均衡—Ribbon


下一篇:springCloud系列三(Ribbon负载均衡)