spring boot applicationContext.getBeansOfType 无法获取所有bean对象

    private final Map callbacks = new HashMap<>();

    public AvatarScanServiceImpl(ApplicationContext applicationContext) {
        applicationContext.getBeansOfType(AvatarScanCallback.class).forEach((k,v)->callbacks.put(v.type(),v));
    }

 代码如上所示,我想在某个service中注入所有AvatarScanCallback类型bean对象,但是发现无法注入全部bean,

最后检查发现是因为有些AvatarScanCallback的子对象中存在循环依赖问题导致此时只能获取一部分。

 

你可能感兴趣的:(spring,boot,java,spring)