【Spring】循环依赖的问题

环境是spring4.3.9
ssm项目

我发现项目中serverA和serverB
他们之间互相用了注解@Resource有注入

但是为什么没有出现循环依赖的报错呢,一直很正常的运行
就是serverA里有serverB,然后serverB里也有serverA,但就是没报错过

然后我今天在serverA的实现类里用了一个注解@Async,然后启动的时候才爆出了引用依赖的错误,删掉这个注解又正常了,我现在是百脸懵逼,求解

 Error creating bean with name 'doServiceImpl': Bean with name 'doServiceImpl' has been injected into other beans [soPackageServiceImpl] in its raw version as part of a circular reference, but has eventually been wrapped. This means that said other beans do not use the final version of the bean. This is often the result of over-eager type matching - consider using 'getBeanNamesOfType' with the 'allowEagerInit' flag turned off, for example.

https://blog.csdn.net/qq_36381855/article/details/79752689

  1. Spring本身支持循环依赖,所以循环依赖不会出错。
  2. 循环依赖的类上,先被spring加载的类里如果使用了@Async注解会启动报错。原因如下:https://blog.csdn.net/liangsheng_g/article/details/119976614