Spring Boot+Apache CXF启动时出现BeanCurrentlyInCreationException问题咨询
问题解答
结论
这种仅在debug级别日志中出现、不影响应用启动和SOAP服务正常运行的BeanCurrentlyInCreationException,可以安全忽略,大概率不是需要修复的致命Bug。
原因分析
- Spring循环依赖的处理机制:Spring默认通过三级缓存机制处理合法的循环依赖,只有当循环依赖无法被容器解析时,才会抛出阻断启动的致命异常。这里仅在debug日志中打印异常信息,说明Spring已经成功处理了该循环依赖,日志只是记录Bean创建过程中的临时状态,并非真正的错误。
- CXF与Spring Boot集成的内部逻辑:
cxf-spring-boot-starter-jaxws的自动配置逻辑中,可能存在内部Bean之间的循环依赖设计,这种依赖属于Spring可处理的范畴,不会影响Bean的初始化和服务功能。 - 版本降级无效的原因:这并非特定版本的Bug,而是CXF Spring Boot Starter集成时的通用设计细节,因此降级Spring Boot或CXF版本无法消除该debug日志。
验证建议
- 确认所有SOAP接口能正常调用,无服务初始化失败的情况。
- 生产环境通常使用
info或warn级别日志,不会输出该debug信息,完全不影响生产运行。 - 若强烈希望消除debug日志,可尝试自定义CXF配置类,手动初始化相关Bean替代自动配置,但此操作无实际功能收益,不推荐。
内容的提问来源于stack exchange,提问作者D.S. Safari
相关产品推荐
相关产品推荐

