Maven使用中的問題 java.lang.NoClassDefFoundError: org/apache/ibatis/cursor/Cursor

1.新建微服務應用,引用公司中的公共數據源common-datasource的jar包(含mybatis包),配置好依賴關係後,啓動項目,報如下錯誤:

java.lang.NoClassDefFoundError: org/apache/ibatis/cursor/Cursor

 網上搜索之後說是因爲mybatis和mybatis-spring的版本問題導致的,需要切換版本如下:


查看公共數據源jar中的pom發現common-datasource中的pom版本正確,如下:


實際jar包中加載的mybatis版本卻是3.2.3版本,通過MVN dependency:tree 檢查依賴關係之後,發現是其他的公共組件B項目jar包中也引用了mybatis包,且版本較低導致。

解決方法:將數據源的依賴關係放到B項目的依賴之前就可以解決,也可以通過如下配置剔除依賴:

<exclusions>
   <exclusion>
      <groupId></groupId>
      <artifactId></artifactId>
   </exclusion>
</exclusions>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章