diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/BeanTypeRegistry.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/BeanTypeRegistry.java index 799b039b0cf..fdb6819bd4a 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/BeanTypeRegistry.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/BeanTypeRegistry.java @@ -159,7 +159,10 @@ final class BeanTypeRegistry implements SmartInitializingSingleton { } private void addBeanTypeForNonAliasDefinition(String name) { - addBeanTypeForNonAliasDefinition(name, getBeanDefinition(name)); + RootBeanDefinition beanDefinition = getBeanDefinition(name); + if (beanDefinition != null) { + addBeanTypeForNonAliasDefinition(name, beanDefinition); + } } private RootBeanDefinition getBeanDefinition(String name) { @@ -219,11 +222,13 @@ final class BeanTypeRegistry implements SmartInitializingSingleton { if (!this.beanFactory.isAlias(name) && !this.beanFactory.containsSingleton(name)) { RootBeanDefinition beanDefinition = getBeanDefinition(name); - RootBeanDefinition existingDefinition = this.beanDefinitions.put(name, - beanDefinition); - if (existingDefinition != null - && !beanDefinition.equals(existingDefinition)) { - addBeanTypeForNonAliasDefinition(name, beanDefinition); + if (beanDefinition != null) { + RootBeanDefinition existingDefinition = this.beanDefinitions + .put(name, beanDefinition); + if (existingDefinition != null + && !beanDefinition.equals(existingDefinition)) { + addBeanTypeForNonAliasDefinition(name, beanDefinition); + } } } }