Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true
解决方法:
在application.yml或你项目对应的配置文件中添加如下代码:
spring:
main:
allow-bean-definition-overriding: true
实践验证:
为了验证该配置信息是否会造成覆盖问题,现模拟一下情况:
项目中有feign模块、service_user模块、service_course模块;其中feign模块包含所有feignclient类;service_course模块导入feign模块并且额外在自己的模块中添加一个feignclient;service_user模块是被其他两个模块远程接口调用的。如下:
feign模块拥有如下文件UserFeign :
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@FeignClient(name = "service-user")
public interface UserFeign {
@GetMapping("/admin/select/{user_id}")
public String findUser(@PathVaria