@Target(value=TYPE) @Retention(value=RUNTIME) @Documented @Import(value=org.springframework.boot.context.properties.ConfigurationPropertiesScanRegistrar.class) @EnableConfigurationProperties public @interface ConfigurationPropertiesScan
@ConfigurationProperties classes. One of
 basePackageClasses(), basePackages() or its alias value()
 may be specified to define specific packages to scan. If specific packages are not
 defined scanning will occur from the package of the class with this annotation.
 
 Note: Classes annotated or meta-annotated with @Component will not be
 picked up by this annotation.
| Modifier and Type | Optional Element and Description | 
|---|---|
Class<?>[] | 
basePackageClasses
Type-safe alternative to  
basePackages() for specifying the packages to
 scan for configuration properties. | 
String[] | 
basePackages
Base packages to scan for configuration properties. 
 | 
String[] | 
value
Alias for the  
basePackages() attribute. | 
@AliasFor(value="basePackages") public abstract String[] value
basePackages() attribute. Allows for more concise annotation
 declarations e.g.: @ConfigurationPropertiesScan("org.my.pkg") instead of
 @ConfigurationPropertiesScan(basePackages="org.my.pkg").@AliasFor(value="value") public abstract String[] basePackages
value() is an alias
 for (and mutually exclusive with) this attribute.
 
 Use basePackageClasses() for a type-safe alternative to String-based
 package names.
public abstract Class<?>[] basePackageClasses
basePackages() for specifying the packages to
 scan for configuration properties. The package of each class specified will be
 scanned.
 Consider creating a special no-op marker class or interface in each package that serves no purpose other than being referenced by this attribute.