天天看點

Spring Boot 調用 MongoRepository時報org.springframework.beans.factory.NoSuchBeanDefinitionException錯誤的解決辦法

這個問題整整折騰了我兩天,現在記錄下來,希望可以幫助和我一樣,遇到相同問題的小夥伴。

項目是分層的(Intellij IDEA中的子產品Module),有API(Core)層,Service&Dao,Common,Model,上一張項目結構圖。(不要在意為什麼Service和Dao放在一起。這不是重點。)

Spring Boot 調用 MongoRepository時報org.springframework.beans.factory.NoSuchBeanDefinitionException錯誤的解決辦法

API中包括了Controller,Mongodb在Service&Dao層中,也就是API層,調用Service&Dao層,我敢用性命擔保,所有注釋,邏輯,都沒有錯,但是運作SpringBoot的時候,偏偏報錯。(找不到依賴,就是注入失敗。)

代碼中繼承了MongoRepository接口

 報錯内容如下:

  解決辦法如下:

因為我的項目是分層的,SpringBoot的@SpringBootApplication注解要添加掃描包,否則有的地方可能會注入失敗。另外一點比較重要,需要使有和Mongodb的@EnableMongoRepositories注解,并指定要掃描的包(IUserGroupRepository所在的包,即繼承