需求:因爲咱們的項目是父子結構的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