网站首页 > 技术文章 正文
在 Spring Boot 运行测试的时候提示错误:
java.lang.NoClassDefFoundError: org/springframework/test/context/TestContextAnnotationUtils
问题和解决办法
出现上面的问题是因为我们将 Spring Boot 从版本 2.3.3 升级到了 2.4
在依赖 spring-test 中,我们还是定义 5.2.8.RELEASE 了这个版本。
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.8.RELEASE</version>
<scope>test</scope>
</dependency>
如果升级版本到 Spring Boot 2.4 的版本的话,你可以首先取消掉 5.2.8.RELEASE 这个版本的限制。
如果取消掉版本的话,你可以看到 Spring 的测试使用的是 5.3.1 的版本。
上面的错误信息就是因为版本的不同,如果你升级了 Spring Boot 的话,相应的测试版本也需要升级。
当取消掉版本后,再次运行测试。
通过控制台测试就可以看到版本兼容性问题已经解决没有了。
猜你喜欢
- 2024-10-02 Maven 的这 7 个问题你思考过没有?
- 2024-10-02 220、Class.forName 和 ClassLoader 有什么区别?
- 2024-10-02 原型模式(Prototype)(原型模式和工厂模式区别)
- 2024-10-02 Alluxio使用贴士:客户端显示找不到FileSystem类问题分析与解决
- 2024-10-02 异常还不知道是什么?一文教会你异常是什么,如何优雅处理
- 2024-10-02 十年架构师干货总结:Java 的类加载机制
- 2024-10-02 线上故障排查全套路盘点,运维大哥请自查
- 2024-10-02 一文读懂 Java 异常处理(java异常处理的方法)
- 2024-10-02 反射必杀技:深入了解Class类,让你一通百通
- 2024-10-02 Java异常的面试问题及答案-Part 2
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- js判断是否空对象 (63)
- pythoncase语句 (81)
- es6includes (73)
- sqlset (64)
- windowsscripthost (67)
- apt-getinstall-y (86)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- js数组插入 (83)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)