需求:因为咱们的项目是父子结构的Maven项目,可能咱们在parent项目中依赖了不少基础包(可能包含有redis,数据库的相关包),那咱们的子项目所有依赖parent,可是可能咱们的服务是消息队列(不须要Redis/数据库),定时任务服务(不须要Redis)等等,因此咱们须要排序不须要的组件redis
异常:spring
因为只要项目中有对应的依赖jar,那么就启动的时候就会去加载对应的组件,也会去扫描配置文件,找不到就会报错。数据库
方案:排序
1.在pom文件中利用exclusions排除不须要的队列
2.在注解里面利用exclude排除不须要的消息队列
经过禁用指定的自动化配置来避免加载没必要要的自动化配置,下面列举了禁用的方法:自动化
注解方式:io
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})class
当使用@SpringBootApplication时,也能够使用它的exclude属性来指定基础
当使用@SpringCloudApplication时,因为它没有exclude属性,因此须要@EnableAutoConfiguration注解配合使用
配置文件:spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration