java.lang.IllegalStateException: Context namespace element ‘annotation-config’ and its parser class
項(xiàng)目中用的是spring低版本(2.5.6),今天用jre 8測試了一下,發(fā)現(xiàn)錯(cuò)誤:
Unexpected exception parsing XML document from class path resource [applicationContext-dao.xml]; nested exception is java.lang.IllegalStateException: Context namespace element ‘a(chǎn)nnotation-config’ and its parser class [org.springframework.context.annotation.AnnotationConfigBeanDefinitionParser] are only available on JDK 1.5 and higher
看源碼是org.springframework.context.annotation.AnnotationConfigBeanDefinitionParser自動(dòng)檢測,jdk版本檢測時(shí)需要jre1.5以上版本,但是JdkVersion只檢查到了1.7,jre1.8 時(shí)不匹配任何jdk,按如下方法處理,可以解決問題。
1、在項(xiàng)目中創(chuàng)建一個(gè)package為org.springframework.core
2、在該package下面新建JdkVersion.java,內(nèi)容如下:
?
我這里只是添加了這個(gè)文件,并沒有替換之前的spring.jar下的文件,很神奇竟然也可以了。
因?yàn)槲易龅捻?xiàng)目是比較早的,所以直接用的別人的jar包。有些版本不匹配。所以報(bào)的錯(cuò)。我用的JDK的版本是1.8.應(yīng)該換成1.7就OK了。
這個(gè)方式比較直接,比較好。
這些問題都可以百度得到。
3、到項(xiàng)目的WEB-INF/classes 下面找到對應(yīng)的package中的JdkVersion.class文件
4、將項(xiàng)目中的spring-core-2.5.6.jar拷貝出來打開,然后將JdkVersion.class替換jar包中的該文件。
5、將修改后的spring-core-2.5.6.jar再覆蓋到項(xiàng)目中。
?
?
總結(jié)
以上是生活随笔為你收集整理的java.lang.IllegalStateException: Context namespace element ‘annotation-config’ and its parser class的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java:假设车库有3个车位(可以通过b
- 下一篇: 在SSH整合过程中:org/hibern