亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SpringBoot 自動(dòng)掃描第三方包及spring.factories失效的問題解決

 更新時(shí)間:2023年05月06日 15:56:06   作者:迷路的圓  
這篇文章主要介紹了SpringBoot 自動(dòng)掃描第三方包及spring.factories失效的問題,本文給大家分享最新解決方法,需要的朋友可以參考下

為什么會(huì)找不到

Spring 依賴注入 就是要讓spring找到要注入的類 并且識(shí)別到了 @Component、@Service 等注解。

1. 當(dāng)在開發(fā)的第三方包里寫明了 @Component、@Service 等等

2. 引入了包,不論第三方庫的引入,還是本地jar。總之是要引入到工程的

這時(shí)候還加入不到 IOC 容器,那就說明SpringBoot工程沒有掃描到這些類。

解決方法

1. componentScan 或者SpringBootApplication(scanBasePackages= )

@SpringBootApplication
@ComponentScan(basePackages = {"com.example.gradlespringbootdemo","com.example.gradlespringboottest"})
public class GradleSpringbootTestApplication {
    public static void main(String[] args) {
        SpringApplication.run(GradleSpringbootTestApplication.class, args);
    }

SpringBootApplication 是個(gè)三合一的注解,其中就包含了ComponentScan 。本身是要默認(rèn)掃描范圍的,手動(dòng)加入ComponentScan后,默認(rèn)就失效了。要手動(dòng)加回來

2. 寫自動(dòng)配置類

這種方法的原理與上一個(gè)其實(shí)是一樣的,實(shí)際作用還是在目標(biāo)上加入了componentScan 的掃描注解

3. spring.factories文件

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
 com.example.gradlespringbootdemo.service.TestService\
 AbcClass\
 DefClass

當(dāng)開發(fā)第三方包時(shí),可以使用這種方法。這樣使用這個(gè)包的springboot工程就可以自動(dòng)掃描到了。其實(shí)就時(shí)springboot啟動(dòng)時(shí)會(huì)掃描依賴jar包下的這個(gè)路徑的spring.factories文件。這個(gè)文件可以寫很多配置,例如Listener等。

如上代碼將需要被掃描的類都寫進(jìn)去。

spring.factories 失效

這是版本問題,新的版本不再支持spring.factories文件了。改為上圖中一長(zhǎng)串那樣的寫法 即 META-INF\spring\org.springframework.boot.autoconfigure.EnableAutoConfiguration.imports這樣,就是把原來的配置單獨(dú)形成文件,直接把要掃描的類寫進(jìn)這個(gè)文件就可以了,每行寫一個(gè),像這樣

到此這篇關(guān)于SpringBoot 自動(dòng)掃描第三方包及spring.factories失效的問題的文章就介紹到這了,更多相關(guān)SpringBoot 自動(dòng)掃描第三方包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論