No qualifying bean of type'xxx'available問題解決
3049 ワード
プロファイルにはスキャンするパッケージが書かれていません.つまり、この言葉:
ユニットテストコード:
私の問題を話しましょう.私がユニットテストをしていたとき、このエラーが発生しました.ネットで調べてみると、プロファイルにスキャンパッケージ情報が書かれていません.ロードされているのはspringです.xmlファイル、このファイルで探しました.
spring.xmlファイル
スキャンパッケージの情報を書きましたが、どうしてエラーが発生しますか?context:component-scanラベルの内容をもう一度よく見て、ああ!スキャンしたバッグを書き間違えた.修正後、テストコードを再実行するか、それともこのエラーが発生するか、本当にどうすればいいか分かりません.仕方なく他のどこかが間違っているかどうかを見続けたが、この探しは本当に問題を発見した.「すべてのdaoインタフェースの実装をスキャンし、iocコンテナに追加する」という注釈の下のパッケージ名がまた書き間違えた.ああ!本当に不注意ですね.注釈が書いてあるのに書き間違えた!本当にバカですね.
まとめ:スキャンパケットの構成情報をうっかり書き忘れたり、スキャンパケットの構成情報を書いたりしたがパケット名が間違っていると、このエラーが発生します.
<context:component-scan base-package=" " />
ユニットテストコード:
// import
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations= {"classpath:spring.xml"})
public class MapperTest {
@Autowired
DeptMapper deptMapper;
@Test
public void testDeptAdd() {
System.out.println(deptMapper);
}
}
私の問題を話しましょう.私がユニットテストをしていたとき、このエラーが発生しました.ネットで調べてみると、プロファイルにスキャンパッケージ情報が書かれていません.ロードされているのはspringです.xmlファイル、このファイルで探しました.
spring.xmlファイル
<context:component-scan base-package="com.ssm" />
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.ssm">property>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory">property>
bean>
スキャンパッケージの情報を書きましたが、どうしてエラーが発生しますか?context:component-scanラベルの内容をもう一度よく見て、ああ!スキャンしたバッグを書き間違えた.修正後、テストコードを再実行するか、それともこのエラーが発生するか、本当にどうすればいいか分かりません.仕方なく他のどこかが間違っているかどうかを見続けたが、この探しは本当に問題を発見した.「すべてのdaoインタフェースの実装をスキャンし、iocコンテナに追加する」という注釈の下のパッケージ名がまた書き間違えた.ああ!本当に不注意ですね.注釈が書いてあるのに書き間違えた!本当にバカですね.
まとめ:スキャンパケットの構成情報をうっかり書き忘れたり、スキャンパケットの構成情報を書いたりしたがパケット名が間違っていると、このエラーが発生します.