diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java b/spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java index aba52d5496..f06f32075b 100644 --- a/spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java +++ b/spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java @@ -471,12 +471,12 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto Map results = new LinkedHashMap(); for (String beanName : getBeanDefinitionNames()) { BeanDefinition beanDefinition = getBeanDefinition(beanName); - if (!beanDefinition.isAbstract() && (findAnnotationOnBean(beanName, annotationType) != null)) { + if (!beanDefinition.isAbstract() && findAnnotationOnBean(beanName, annotationType) != null) { results.put(beanName, getBean(beanName)); } } for (String beanName : getSingletonNames()) { - if (findAnnotationOnBean(beanName, annotationType) != null) { + if (!results.containsKey(beanName) && findAnnotationOnBean(beanName, annotationType) != null) { results.put(beanName, getBean(beanName)); } }