我创建了注释并将其添加到方法中。 我创建了实现BeanPostProcessor的类,并想添加带有注释的方法来设置另一个类InitManager中的值,我在InitManager类中注册了方法,将该方法作为参数接收,并将其添加到set中。 问题是,当我在批注处理器中收到带有新批注的方法时,其类型为method,无法将其强制转换为Consumer。而且我还怀疑InitManager的bean在这个阶段没有创建。 `private void configureFieldInjection(Object bean){ 类ManagedBeanClass = bean.getClass();
InitManager init =
configurableBeanFactory.getBean(InitManager.class);
ReflectionUtils.doWithMethods(managedBeanClass,method -> {
if(AnnotationUtils.getAnnotation(method,printIt.class)!=null) {
method.setAccessible(true);
init.register(method);
}
和注册方法:
在此处输入代码public void register(Consumer<String> method){
set.add(method);
}
这两个类都使用@Component批注进行批注