SpringBoot 项目无端报错,如何排除 MyBatis-Plus 和 Spring Boot 版本不兼容导致的错误?

springboot 项目无端报错,如何排除 mybatis-plus 和 spring boot 版本不兼容导致的错误?

springboot 项目无端报错,寻根究底

虽然项目代码未经修改,但今天启动时却突然抛出无法解释的错误:

creating a new sqlsession
sqlsession [org.apache.ibatis.session.defaults.defaultsqlsession@2dbe837b] was not registered for synchronization because synchronization is not active

困惑不已,因为并没有任何错误的代码。然而,仔细检查却发现了一个关键点:此错误指向了一个 mybatis 相关的问题。

深入考察 spring boot 项目的配置,发现 mybatis-plus 的相关配置:

mybatis-plus:
  config-location: classpath:mybatis/mybatis-config.xml
  mapper-locations: classpath:mybatis/mapper/*.xml

尝试在网上寻找答案,不少文章提到了代码错误导致的类似错误。然而,仔细审阅代码后,并没有发现任何错误。

进一步探寻,发现了一篇博文(https://blog.csdn.net/web1829...),指出该错误可能是由于 mybatis-plus 的版本和 spring boot 版本不兼容造成的。

根据博文的建议,升级 spring boot 版本至 2.5.5,并重新编译项目。令人惊喜的是,错误消失,项目得以正常运行。

由此可见,即使项目未经修改,配置中的兼容性问题也可能导致看似莫名其妙的错误。所以,遇到此类问题时,要从代码以外的角度思考,如检查配置、库版本等方面,才能有效解决问题。

以上就是SpringBoot 项目无端报错,如何排除 MyBatis-Plus 和 Spring Boot 版本不兼容导致的错误?的详细内容,更多请关注其它相关文章!