1. SpringBoot与SpringCloud版本过高导致的报错
报错如下:
No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalancer?
原因:
由于Spring Cloud Feign在Hoxton版本之后不再使用Ribbon而是使用spring-cloud-loadbalancer,所以不引入spring-cloud-loadbalancer会报错
解决方式:
方式1:加入spring-cloud-loadbalancer依赖,并且在nacos中排除ribbon依赖,不然loadbalancer无效
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-loadbalancer</artifactId>
</dependency>
方式2:降低SpringBoot和SpringCloud版本,我使用的是SpringBoot 2.3.7.RELEASE和SpringCloud Hoxton.SR9
2. 如果服务未注册进入注册中心,是否可以通过OpenFeign进行远程调用?
可以
-
如果未注册进入注册中心
需要显示指定调用的url -
如果注册进入注册中心
只需要指定微服务serviceId