我有几个JUnit测试,都使用SpringJUnit4ClassRunner
运行。我可以在SpringSource Tool Suite (Eclipse Juno) IDE中按类单独运行它们,并且它们通过了测试。如果我尝试按模块运行它们("在选定项目中运行所有测试"),则它们会失败,并出现以下NoClassDefFoundError
初始化错误:
有办法解决吗?
吉文斯:
- JUnit Version 4.11
- Spring Version 3.2.9-RELEASE
- 所有测试使用
@RunWith(SpringJUnit4ClassRunner.class)
—其他使用此运行器的测试单独成功,并作为组/套件 - 所有测试使用
@ContextConfiguration(classes = { MyModuleConfiguration.class })
- 所有测试都有
@Autowired
@Bean
在MyModuleConfiguration
中定义。 - Maven Central说
AnnotatedElementUtils
是Spring 4类,但是我的依赖树没有显示Spring 4 任何。 - 这个问题是类似的,他看起来已经能够通过改变一些(不清楚)版本来解决这个问题。
- [Update 1]
mvn test
在每个模块上成功
我也面临同样的问题,但发现我使用的是依赖于spring 4依赖的spring数据版本。我降低了spring数据依赖的版本来解决这个问题