@RequiredArgsConstrutor循环依赖问题
@RequiredArgsConstructor
lombok的注解,通过构造器注入对象,对象必须final;
循环依赖问题
***************************
APPLICATION FAILED TO START
***************************
Description:
The dependencies of some of the beans in the application context form a cycle:
sxAuthController (field com.sixin.cloud.user.service.ISxAuthService com.sixin.cloud.user.controller.BaseController.sxAuthService)
┌─────┐
| sxAuthServiceImpl defined in file [D:\javaWorkSpace\aiot-platform-cloud\user-center\user-center-server\target\classes\com\sixin\cloud\user\service\impl\SxAuthServiceImpl.class]
└─────┘
例:类ISxAuthService 已经依赖了 类sxAuthServiceImpl,不需要再使用@RequiredArgsConstrutor 构造注入了,形成了循环依赖的情况;
解决方式:
一、代码八成有问题的,比如上例: sxAuthService sxAuthController SxAuthServiceImpl,这三个类存在不该有的注入与@RequiredArgsConstrutor冲突了,把引入的那个类去掉,保留注解即可;
二、不用lombok的这个注解,使用@Resource、@Autowire都行;
三、@RequiredArgsConstructor(onConstructor = @__(@Autowired)), 这样写后,还可以用final的写法写,但是默认都是通过@Autowired注入的;
四、@RequiredArgsConstructor(onConstructor_ = {@Lazy}); 使用懒加载解决;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了