Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 带弹簧测试的弹簧震击器版本_Java_Spring_Maven_Junit_Spring Test - Fatal编程技术网

Java 带弹簧测试的弹簧震击器版本

Java 带弹簧测试的弹簧震击器版本,java,spring,maven,junit,spring-test,Java,Spring,Maven,Junit,Spring Test,我正在为一个Spring应用程序编写一些JUnit,它使用的Spring版本是 <spring.version>3.2.8.RELEASE</spring.version> 当我尝试执行测试用例时,它无法初始化,即它甚至没有进入@Before方法并抛出以下异常: java.lang.NoClassDefFoundError: org/springframework/core/type/AnnotatedTypeMetadata at org.spring

我正在为一个Spring应用程序编写一些JUnit,它使用的Spring版本是

    <spring.version>3.2.8.RELEASE</spring.version>
当我尝试执行测试用例时,它无法初始化,即它甚至没有进入
@Before
方法并抛出以下异常:

java.lang.NoClassDefFoundError: org/springframework/core/type/AnnotatedTypeMetadata
    at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:118)
我相信AnnotatedTypeMetadata只有在SpringRelease4.10.0之后才可用,但既然我在应用程序中的任何地方都没有使用它,而且我的SpringTest和SpringCore的版本都是相同的,为什么还要提到它呢


有什么想法吗?

显然,您的类路径上有各种Spring jar的不兼容版本

要确定类路径中存在哪些不兼容的版本(即除
3.2.8.RELEASE
之外),请在项目文件夹中执行
mvn dependency:tree

然后确保避免类路径上存在不兼容的版本——例如,通过向Maven POM中添加任何依赖项的排除,这些依赖项将不需要的版本作为可传递依赖项引入

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations="classpath:config/test-application-context-datasource.xml")
java.lang.NoClassDefFoundError: org/springframework/core/type/AnnotatedTypeMetadata
    at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:118)