zoukankan      html  css  js  c++  java
  • java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.base.BaseSelectProvider.<init>()

    这个问题好奇怪,

    出现这个错误是通用Mapper初始化的错误,排查的方向就是往这个方向,可能的情况有以下几种:
    
    1.jar包冲突
    
    <dependency>
    <groupId>tk.mybatis</groupId>
    <artifactId>mapper</artifactId>
    <version>3.3.9</version>
    </dependency>
    <dependency>
       <groupId>tk.mybatis</groupId>
       <artifactId>mapper-spring-boot-starter</artifactId>
       <version>2.0.0</version>
    </dependency>
    如图所示这里有两个tk.mybatis通用Mapper的包了,所以springboot不知道该初始化哪个
    
    <dependency>
       <groupId>tk.mybatis</groupId>
       <artifactId>mapper-spring-boot-starter</artifactId>
       <version>2.0.0</version>
    </dependency>
    这里使用这个包,重启后运行正常
    
    2,MapperCan 扫包配置错误
    
    @SpringBootApplication
    @MapperScan(basePackages = "com.example.demo.*.dao")
    @ComponentScan("com.example.demo.*")
    public class DemoApplication extends SpringBootServletInitializer{
    之前配置的是
    
    @MapperScan(basePackages = "com.example.demo.*.dao")
    应该改成
    
    @MapperScan(basePackages = "com.example.demo.*.dao.*")
    我思考了以下应该是扫包的话是扫很多个包,所以应该是以*结尾的
    
    这样重启后正常
    --------------------- 
    作者:跃跃的呢 
    来源:CSDN 
    原文:https://blog.csdn.net/y2446421841/article/details/80566082 
    版权声明:本文为博主原创文章,转载请附上博文链接!

    看起来好像BaseSelectProvider 需要一个无参的构造器,但是查看了BaseSelectProvider源码,确实是没有的,怎么办呢? 感觉好像是版本问题,

    尝试导入:

    import tk.mybatis.spring.annotation.MapperScan;

    但是没有这个类,只有另外的一个,但是 那个恰恰是 好像是错误的根源。

            <dependency>
                <groupId>tk.mybatis</groupId>
                <artifactId>mapper-spring-boot-starter</artifactId>
                <!--<version>1.1.5</version>-->
                <version>2.0.0</version>
            </dependency>

    后面把版本从1.1.5 改成了 2.0.0 就好了, 奇怪了。

    https://www.jianshu.com/p/71fe3b73479c

    https://blog.csdn.net/Dongguabai/article/details/80729563

  • 相关阅读:
    非父子组件通信
    vue中的导航守卫
    vue中做出购物车的功能
    vuex初使用(写的当然是最简单的应用啦)
    封装了一个电商放大镜移入放大的功能,适用于VUE
    moment.js插件的简单上手使用
    Vue中如何将数据传递到下一个页面(超级简单哒)
    java Math
    java Arrays
    java static
  • 原文地址:https://www.cnblogs.com/FlyAway2013/p/10197139.html
Copyright © 2011-2022 走看看