IntelliJ Idea 解決 Could not autowire. No beans of ‘xxxx' type found 的錯(cuò)誤提示
目前創(chuàng)新互聯(lián)公司已為上1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站托管運(yùn)營(yíng)、企業(yè)網(wǎng)站設(shè)計(jì)、永勝網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
哈,在使用 @Autowired 時(shí),今天又遇一坑,這倆波浪線是干啥子嘛:
然鵝,試了一下,控制臺(tái)也不報(bào)錯(cuò),可以正常運(yùn)行,
數(shù)據(jù)也有:
于是,又再百度上找答案。。
問(wèn)題分析
在 Idea 的 spring 工程里,經(jīng)常會(huì)遇到 Could not autowire. No beans of ‘xxxx' type found 的錯(cuò)誤提示。但程序的編譯和運(yùn)行都是沒(méi)有問(wèn)題的,這個(gè)錯(cuò)誤提示并不會(huì)產(chǎn)生影響。但紅色的錯(cuò)誤提示在有些有強(qiáng)迫癥的程序員眼里,多多少少有些不太舒服。
問(wèn)題原因其一
第一個(gè)是 Intellij IDEA 本身工具的問(wèn)題。
解決辦法:
(1)不理它。
(2)在注解上加上:
@Autowired(required = false)
(3)降低 Autowired 檢測(cè)的級(jí)別,將 Severity 的級(jí)別由之前的 error 改成 warning 或其它可以忽略的級(jí)別。
還有一個(gè)原因
這個(gè)博主沒(méi)有遇到,友情粘貼!
第二個(gè)便是我們導(dǎo)入 @Service 包的時(shí)候?qū)氚e(cuò)誤造成的。
spring auto scan 配置,在編輯情況下,無(wú)法找不到對(duì)應(yīng)的bean,于是提示找不到對(duì)應(yīng) bean 的錯(cuò)誤。常見(jiàn)于 mybatis 的 mapper,如下:
解決辦法:
錯(cuò)誤導(dǎo)包 import com.alibaba.dubbo.config.annotation.Service;
正確的包應(yīng)該是下面這個(gè):
import org.springframework.stereotype.Service;
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。