Spring Junit測試找不到SpringJUnit4ClassRunner.class的解決
Spring Junit測試找不到SpringJUnit4ClassRunner.class
問題描述
1.當使用Junit指定啟動類為SpringJUnit4ClassRunner.class,發現SpringJUnit4ClassRunner.class找不到
2.參考網上說是因為空格問題,但是本次遇到的問題其實不是
問題分析
1.本次測試使用Maven管理的項目,而不是直接導入spring-test的jar包
2.查看Maven依賴,發現裡面還有一個<scope>,因為JUnit是直接添加到路徑中,並不是通過Maven依賴加入,如果加入瞭<scope>會導致匹配不上
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.0.9.RELEASE</version> <scope>test</scope> </dependency>
解決步驟
1.因為在Maven依賴中多瞭<scope>標簽,所以刪除之後即可
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.0.9.RELEASE</version> </dependency>
2.刪除之後再次測試,成功找到SpringJUnit4ClassRunner.class
RunWith找不到SpringJUnit4ClassRunner.class
maven項目@RunWith找不到SpringJUnit4ClassRunner.class
問題概述
1、在使用maven創建項目後在在Maven Repository網站找到的相關然後在eclipse中jar包無法使用
2、在使用@RunWith(SpringJUnit4ClassRunner.class)時找不到SpringJUnit4ClassRunner.class
3、網上解決方法是相關空格的問題
問題分析
使用maven創建web項目後,不直接導入相關包。
在pom.xml中導入相關依賴後發現相關jar不能使用
與其他依賴對比後發現在無法使用的依賴關系中有存在標簽
問題解決
刪除標簽後相關依賴可以使用,@RunWith能找到SpringJUnit4ClassRunner.class,相關其他依賴也是存在這樣的問題
總結
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- springBoot Junit測試用例出現@Autowired不生效的解決
- SpringBoot與單元測試JUnit的結合操作
- 如何使用Spring-Test對Spring框架進行單元測試
- SpringRunner和SpringJUnit4ClassRunner的區別及說明
- spring如何實現依賴註入DI(spring-test方式)