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

再次启动项目,就可以正常运行了!

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐