Maven / Spring:AopNamespaceUtils NoSuchMethod错误

时间:2011-06-13 17:03:34

标签: java spring maven

使用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

1 个答案:

答案 0 :(得分:5)

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

  

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

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