【feign】feign 使用 FallbackFactory<T>获取异常信息,但接口无法注入
A component required a bean of type ‘XXXService‘ that could not be found
背景:
@EnableFeignClients注入问题
这是一个多模块cloud工程,其中有一个微服务模块,我在借助FallbackFactory<T>实现Feign服务降级以及异常消息获取时,发现报错bean无法注入,在@SpringBootApplication上添加扫描范围也不起作用
解决办法:
1.首选确认@Component这类注解已添加;
2.这时我发现如果单纯是用类实现feign接口,没有借助 FallbackFactory<T>发现bean可以正常注入:
public class WorkFlowServiceImpl implements WorkFlowService {}
3.最后看了下其他项目的注解,试着在启动类上给Feign添加扫描范围,发现可以注入了:
@EnableFeignClients({"com.demo.cloud"})
原因猜测:
可能是多模块导致的,所以需要对@EnableEfignClients()指定扫描路径@EnableEfignClients("xx.xx.xxx")...?
ps:我项目里对应包路径:
@FeignClient注解接口所在路径:com.demo.cloud.infra.feign.WorkFlowService
启动类所在路径:com.demo.cloud.ConsumeXXXXApplication
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
2021-03-03 【HashMap,HashTable,ConcurrentHashMap的共同点和区别】