Spring项目用junit 时出现org.junit.runners.BlockJUnit4ClassRunner cannot be resolved

spring框架项目用junit做测试时,程序在自动编译时出现下述问题:

程序的问题是项目中找不到org.junit.runners.BlockJUnit4ClassRunner,有两种可能,一是没有导入junit的jar, 二是导入的junit的jar的版本中没有此类。

总结:

1、如果导入过jar,就充分可以肯定是版本问题,junit换一个高一些的版本,问题解决。

2、经过调查了解到Spring3提供了SpringJUnit4ClassRunner基类让我们可以很方便的接入JUnit4,而org.springframework.test.context.junit4.SpringJUnit4ClassRunner 继承了org.junit.runners.BlockJUnit4ClassRunner,这里BlockJUnit4ClassRunner类是在junit4.5以上的版本才含有的。
3、使用junit4.11版本时,官网里是要求junit-4.11.jar + hamcrest-core-1.3.jar,如果不加hamcrest-core-1.3.jar会报Java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing错误。如果用4.11版本需要两个Jar都加上,或者换成低一点的版本.



你可能感兴趣的:(Spring项目用junit 时出现org.junit.runners.BlockJUnit4ClassRunner cannot be resolved)