diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/EnableAutoConfigurationImportSelector.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/EnableAutoConfigurationImportSelector.java index ad27704bdc1..fc5a0bde104 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/EnableAutoConfigurationImportSelector.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/EnableAutoConfigurationImportSelector.java @@ -31,12 +31,14 @@ import org.springframework.core.annotation.Order; import org.springframework.core.io.ResourceLoader; import org.springframework.core.io.support.SpringFactoriesLoader; import org.springframework.core.type.AnnotationMetadata; +import org.springframework.util.Assert; /** * {@link DeferredImportSelector} to handle {@link EnableAutoConfiguration * auto-configuration}. * * @author Phillip Webb + * @author Andy Wilkinson * @see EnableAutoConfiguration */ @Order(Ordered.LOWEST_PRECEDENCE) @@ -54,6 +56,10 @@ class EnableAutoConfigurationImportSelector implements DeferredImportSelector, .getAnnotationAttributes(EnableAutoConfiguration.class.getName(), true)); + Assert.notNull(attributes, "No auto-configuration attributes found. Is " + + metadata.getClassName() + + " annotated with @EnableAutoConfiguration?"); + // Find all possible auto configuration classes, filtering duplicates List factories = new ArrayList(new LinkedHashSet( SpringFactoriesLoader.loadFactoryNames(EnableAutoConfiguration.class,