Relying upon circular references is discouraged and they are prohibited by default.循环依赖bug解决
bug展示
为了解决CVE-2022-22965,将springboot升级到2.6.6,启动项目时出现这样的bug。
Error starting ApplicationContext. To display the conditions report re-run your application with ‘debug’ enabled.
Action:
Relying upon circular references is discouraged and they are prohibited by default. Update your application to remove the dependency cycle between beans. As a last resort, it may be possible to break the cycle automatically by setting spring.main.allow-circular-references to true.
出现的bug大概意思是:不鼓励依赖循环引用,默认情况下是禁止的。更新您的应用程序以删除 bean 之间的依赖循环。作为最后的手段,可以通过将 spring.main.allow-circular-references 设置为 true 来自动中断循环。
bug解决
SpringBoot2.6 正式发布:循环依赖默认禁止。如上提供解决方案为将spring.main.allow-circular-references 设置为 true,来自动中断循环。
如果是.properties文件,在文件中添加
spring.main.allow-circular-references=true
如果是.yml文件,则在文件中添加
spring:
main:
allow-circular-references:true
再次启动项目,就可以正常运行了!