几周前,我将 Spring 的版本从 1.4.x.RELEASE 升级到 1.5.1.RELEASE。
突然之间,由于这个错误,启动我的 Spring Boot 服务变成了一场战斗:
“应用程序上下文中某些bean的依赖关系形成一个循环”
相同的代码,不同的版本
这很有趣,因为在我的本地环境(OSX)上,相同的代码通常启动正常,但在 Heroku 上,在不同的部署上随机失败(看起来类路径类解析的顺序不同,由于操作系统或由于不同的 JDK 实现)
我什至重构了代码以在各处使用字段注入(inject)而不是构造函数一,但没有成功。
有什么建议吗?为什么这个 Spring 版本突然开始产生这些错误?
谢谢!
最佳答案
从日志中找出哪个 bean 是循环的原因,并在代码中为该 bean 使用 @Lazy 注释和 @Autowired。对于大多数情况,这应该可以解决问题。
关于java - Spring Boot 1.5.1 和 "The dependencies of some of the beans in the application context form a cycle",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42568049/