Maven / Spring:AopNamespaceUtils NoSuchMethod错误

使用Maven在windows下构建我的项目工作正常,但是当我在Linux下构建它时,我得到一个关于其中一个spring库的NoSuchMethodError

我猜这是与跨平台的类加载器差异和我的依赖项中的某个地方有关,我可能有两次相同的类但是windows加载一个而linux加载另一个?

有没有人遇到过这个问题,或者对如何进一步调试此错误有任何建议?

 nested exception is java.lang.NoSuchMethodError: org.springframework.aop.config.AopNamespaceUtils.registerAutoProxyCreatorIfNecessary(Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;)V: java.lang.NoSuchMethodError: org.springframework.aop.config.AopNamespaceUtils.registerAutoProxyCreatorIfNecessary(Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;)V at org.springframework.transaction.config.AnnotationDrivenBeanDefinitionParser$AopAutoProxyConf 

Stack Trace Pastie
POM.xml Pastie

您的spring依赖项有太多不同的版本:

org.springframework:弹簧豆:jar子:2.5.6:编译
org.springframework:弹簧AOP:jar子:2.0.8:编译
org.springframework:弹簧JMS:jar子:3.0.5.RELEASE:编译

使所有spring依赖项具有相同的版本(最好是3.0.5.RELEASE)