今天在使用dubbo2.5.3版本的時候,啟動項目的時候發現一個問題,tomcat啟動一直報錯
Caused by: 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仔細看來,我用的jdk1.8 ,編譯也是jdk1.8,仔細想想有可能式是jar包沖突,仔細排查是dubbo默認引用的spring版本太低了導致的,如圖

解決方案:
通過
maven的 <exclusions>標簽解決類包依賴沖突
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.5.3</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion>
</exclusions>
</dependency>
這樣就去掉了隱式引用

再編譯啟動正常了
PS:網上我看有很多博文,是降低jdk或者升級spring版本,我沒有試驗,不知道可不可行
