Springboot项目的启动类都有@SpringBootApplication注解,这个注解主要有三个注解构成,
@EnableAutoConfiguration,@SpringBootConfiguration,@ComponentScan,其中@EnableAutoConfiguration这个注解就是和springboot的自动化配置有关。
@EnableAutoConfiguration这个注解主要是有一个@Import注解,他主要引入了AutoConfigurationImportSelector这个类
AutoConfigurationImportSelector这个类中,主要是selectImports这个方法
调用getCandidateConfigurations这个方法
然后又调用loadFactoryNames这个方法,又在其中调用loadSpringFactories方法
在这个方法中,可以看到加载的源文件为FACTORIES_RESOURCE_LOCATION
所以最终加载的类为
META-INF/spring.facotries这个文件中的类,以nacos注册中心启动为例,主要自动加载这些类。



