項目想注入一個starter依賴包中的bean,啟動spring容器出現問題


按照常理,我們的maven項目里面引入一個外部依賴,

如果該依賴的其中一個bean上面有@Component注解也就是說,項目啟動過時該bean已經注入到了spring容器中,

那我們的在開發時,是可以對該bean使用@Autowried進行依賴注入,但是注入之后啟動卻報錯,

這是為什么?

研究發現,因為我引入的依賴是一個starter,springboot的starter有自己的一套標准,一套協議,每個starter里面規定了哪些bean是可以注入的,我們程序在引入該starter的時候,

他其實已經被規定好了,我們不需要單獨去注入他的某個bean,如果非要注入,那得檢查該bean是否在該starter的spring.factories文件中是否配置,

也就是說 ,starter是在spring.factories文件中規定了哪些bean是自動注入的,他只需對外提供注解,或者application.properties文件中的自動提示(key-value形式的配置)。這樣就是簡化我們使用成本,

要不為啥人家要叫做自動化裝配呢。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM