Many people implementate BeanPostProcessor to realize Aop, but it has a problem with cicle reference. Implementation SmartInstantiationAwareBeanPostProcessor.getEarlyBeanReference is a good practice, for example AbstractAutoProxyCreator.
I think the case could make learners understand better.
Comment From: lixiaolong11000
hello,please take a look.
Comment From: snicoll
Thanks for the PR but cases like this are better served using ObjectProvider or @Lazy on the target component to indicate the lifecycle explicitly.