在 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 的話,相應的測試版本也需要升級。
當取消掉版本后,再次運行測試。
通過控制台測試就可以看到版本兼容性問題已經解決沒有了。
https://www.ossez.com/t/spring-boot-testcontextannotationutils/13208