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 版本不兼容导致的错误?的详细内容,更多请关注其它相关文章!