转自 https://blog.csdn.net/u012453...
原博删除在此记录
1.问题形容
在Idea的spring工程里,常常会遇到Could not autowire. No beans of 'xxxx' type found的谬误提醒。但程序的编译和运行都是没有问题的,这个谬误提醒并不会产生影响。但红色的谬误提醒在有些有强迫症的程序员眼里,多多少少有些不太难受。
起因
起因可能有两个,第一个是IntellijIDEA自身工具的问题。第二个便是咱们导入@Service包的时候导入包谬误造成的
第一种起因,spring auto scan配置,在编辑状况下,无奈找不到对应的bean,于是提醒找不到对应bean的谬误。常见于mybatis的mapper,如下:
<!-- mapper scanner configurer -->
<bean id="mapperScannerConfig" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.adu.spring_test.mybatis.dao" /><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
</bean>
- 解决方案
针对第一种起因,解决办法是:升高Autowired检测的级别,将Severity的级别由之前的error改成warning或其它能够疏忽的级别。
针对第二种起因,解决方案当然是导入正确的包。首先咱们来看下最容易导入的谬误包,如下所示:
import com.alibaba.dubbo.config.annotation.Service;
正确的包应该是上面这个
import org.springframework.stereotype.Service;
切记切记啊!!!!