记一次整合SpringCloud Alibaba+SpringCloud OpenFeign报错

Exception:

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会报错。
解决办法:
在pom.xml中加入loadbalancer的依赖

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

因为此时我的项目中还有nacos的依赖,nacos依赖中包含ribbon依赖会导致loadbalancer无效,所以还要排除nacos依赖中的ribbon依赖。

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

版权声明:本文为qq_40100414原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。