modelA的java包結構是:com.yd.pmp.aaa.xxx.xx
modelB的java包結構是:com.yd.pmp.bbb.xxx.xx
modelB將來要發佈成一個jar包,modelA中會依賴modelB的jar包。在測試的時候發現,在modelA中啓動時無法掃描到modelB中聲明的那些component,在網上找了大半天資料都沒有發現有相關的解決方案。後來隱隱約約想起學習springboot時有過說明,@ComponentScan掃描的時候,只掃描當前程序所在包結構(包含子包)中聲明的組件。調整了modelA中啓動程序所在的包位置,果然好使了!
modelA中啓動程序類App.java(內含@ComponentScan註解)原來所在包的位置是:
com.yd.pmp.aaa.App.java
調整後所在包的位置是:
com.yd.pmp.App.java
這樣在App.java啓動後就可以掃描到modelB中所有聲明的組件了
轉載自:https://blog.csdn.net/JIESA/article/details/78094677