1.今天项目中需要用到dubbo的JSON类,把字符串转成JsonObject,便引入了dubbo包依赖:

	<dependency>
	    <groupId>com.alibaba</groupId>
	    <artifactId>dubbo</artifactId>
	    <version>2.5.3</version>
	</dependency>

2.然后启动项目,便开始了如下的错误:

org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [annotation.xml]; nested exception is java.lang.IllegalStateException: Context namespace element 'component-scan' and its parser class [org.springframework.context.annotation.ComponentScanBeanDefinitionParser] are only available on JDK 1.5 and higher
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:420)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)

3.我看网上基本都说是引入的Spring版本太低导致的,跟JDK1.8不兼容,可是项目引入的spring是4.3版本的,不可能是这个原因啊!于是再一次仔细查看了dubbo依赖的包,果然:
Spring小知识:Context namespace element 'component-scan' ...are only available on JDK 1.5 and higher错误End:
解决方案有二:

		1. 移除dubbo包,换种方法转对象,启动项目,问题解决
		2.如果项目必须依赖dubbo,只需要在引入dubbo的时候,把spring低版本的包排除就好。点击进入下面的
		  链接,可以查看配置的方法。

===>前方高能
引入dubbo,并排除spring包的方法:
https://blog.csdn.net/weixin_43945983/article/details/89554484

相关文章: