No Feign Client for loadBalancing defined.Feign报错的解决办法

No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalancer?

这是一个版本不兼容问题

Spring Cloud Feign在Hoxton.M2 RELEASED版本之后不再使用Ribbon而是使用spring-cloud-loadbalancer,所以不引入spring-cloud-loadbalancer会报错.

所以需要去掉ribben,添加loadbalancer

修改nacos的依赖

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

然后再有spring-cloud的模块里添加loadbalancer

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-loadbalancer</artifactId>
</dependency>
经验分享 程序员 微信小程序 职场和发展