简体   繁体   English

java.lang.NoSuchMethodError:org.springframework.beans.factory.annotation.InjectionMetadata.needsRefresh

[英]java.lang.NoSuchMethodError: org.springframework.beans.factory.annotation.InjectionMetadata.needsRefresh

I am using spring 3.2.6 RELEASE and getting error after putting this login config in xml : 我正在使用spring 3.2.6 RELEASE并将此登录配置放入xml后出现错误:

<http auto-config="true">
   <intercept-url pattern="/login.html" access="IS_AUTHENTICATED_ANONYMOUSLY"/>
      <intercept-url pattern="/loginFailed.html" access="IS_AUTHENTICATED_ANONYMOUSLY"/>
      <intercept-url pattern="/**" access="ROLE_USER"/>
      <form-login login-page="/login.html" authentication-failure-url="/loginFailed.html"/>
</http>

this is my pom.xml : 这是我的pom.xml

<dependencies>
<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>5.1.6</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-jdbc</artifactId>
  <version>3.2.6.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework.security</groupId>
  <artifactId>spring-security-taglibs</artifactId>
  <version>3.2.6.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework.security</groupId>
  <artifactId>spring-security-web</artifactId>
  <version>3.2.6.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework.security</groupId>
  <artifactId>spring-security-config</artifactId>
  <version>3.2.6.RELEASE</version>
</dependency>
<dependency>
  <groupId>commons-logging</groupId>
  <artifactId>commons-logging</artifactId>
  <version>1.2</version>
</dependency>

<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
  <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>3.2.6.RELEASE</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>4.2.0.Final</version>
</dependency>
<dependency>
    <groupId>org.codehaus.jackson</groupId>
    <artifactId>jackson-mapper-asl</artifactId>
    <version>1.4.1</version>
</dependency>
<dependency>
    <groupId>com.thoughtworks.xstream</groupId>
    <artifactId>xstream</artifactId>
    <version>1.3.1</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-oxm</artifactId>
    <version>3.2.6.RELEASE</version>
</dependency>    

error when try to access url: 尝试访问网址时出错:

java.lang.NoSuchMethodError: org.springframework.beans.factory.annotation.InjectionMetadata.needsRefresh(Lorg/springframework/beans/factory/annotation/InjectionMetadata;Ljava/lang/Class;)Z at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.findResourceMetadata(CommonAnnotationBeanPostProcessor.java:317) at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(CommonAnnotationBeanPostProcessor.java:285) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyMergedBeanDefinitionPostProcessors(AbstractAutowireCapableBeanFactory.java:870) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:495) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(Ab java.lang.NoSuchMethodError:org.springframework.beans.factory.annotation.InjectionMetadata.needsRefresh(Lorg / springframework / beans / factory / annotation / InjectionMetadata; Ljava / lang / Class;)Z在org.springframework.context.annotation.CommonAnnotationBeanPostProcess org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(CommonAnnotationBeanPostProcessor.java:285)的org.springframework.beans.factory.support.AbstractAutowireCapergeBeanBean(Factory) org.springframework.beans.factory上的org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:495)在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)。 support.AbstractBeanFactory $ 1.getObject(Ab stractBeanFactory.java:296) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:293) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:198) at org.springframework.context.support.AbstractApplicationContext.initMessageSource(AbstractApplicationContext.java:786) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:467) at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:651) at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:599) at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:665) at org.springframework.web.servlet.FrameworkServlet.initWebApplicationCo org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)的org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:293)的stractBeanFactory.java:296) org.springframework.context.support.AbstractApplicationContext.initMessageSource(AbstractApplicationContext.java:786)上的.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:198)org.springframework.context.support.AbstractApplicationContext.refresh (AbstractApplicationContext.java:467)在org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:651)在org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:599)在org.springframework。 org.springframework.web.servlet.FrameworkServlet.initWebApplicationCo上的web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:665) ntext(FrameworkServlet.java:518) at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:459) at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136) at javax.servlet.GenericServlet.init(GenericServlet.java:158) at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1174) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1090) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:770) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) at org.apache.catalina.valves.AbstractAccessLogValve.invoke org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:459)的org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136)的ntext(FrameworkServlet.java:518) .org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1174)的.GenericServlet.init(GenericServlet.java:158)在org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1090)处org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133)的org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:770)在org.apache.catalina.core.StandardContextValve.invoke( org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)处的org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)处的StandardContextValve.java:96) org.apache.catalina.valves.AbstractAccessLogValve.invoke的.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) (AbstractAccessLogValve.java:651) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:417) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376) (AbstractAccessLogValve.java:651)在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)在org.apache。在org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)的coyote.http11.Http11Processor.service(Http11Processor.java:417)在org.apache.coyote.AbstractProtocol $ ConnectionHandler.process(AbstractProtocol.java:754)在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1376)

what version of spring-beanss-xxx you have in your dependencies. 您的依赖项中使用的是哪个版本的spring-beanss-xxx。

The needsRefresh() method can't be found in the 3.0.x version. 在3.0.x版本中找不到needsRefresh()方法。 It was added in Spring 4.0.x. 它是在Spring 4.0.x中添加的。

You need to run: 您需要运行:

mvn dependency:analyze

or to view all dependencies 或查看所有依赖项

mvn dependency:tree

If you have multiple versions of the same lib, the class-loader can pick the first one it found, so exclude all unnecessay dependencies. 如果同一个库具有多个版本,则类加载器可以选择找到的第一个库,因此请排除所有不必要的依赖项。

If nothing works , delete your .m2 directory and run it again. 如果没有任何效果,请删除您的.m2目录,然后再次运行。 Sometime maven tricks you :) 有时候,行家会欺骗你:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 org.springframework.beans.factory.annotation.InjectionMetadata.needsRefresh - org.springframework.beans.factory.annotation.InjectionMetadata.needsRefresh Spring Error - java.lang.NoSuchMethodError:&gt; org.springframework.beans.factory.annotation.InjectionMetadata。 <init> - Spring Error - java.lang.NoSuchMethodError: > org.springframework.beans.factory.annotation.InjectionMetadata.<init> java.lang.NoSuchMethodError: org.springframework.beans.factory.annotation.AnnotatedBeanDefinition.setRole(I)V - java.lang.NoSuchMethodError: org.springframework.beans.factory.annotation.AnnotatedBeanDefinition.setRole(I)V java.lang.NoSuchMethodError:org.springframework.beans.factory.xml.XmlBeanDefinitionReader.setEnvironment - java.lang.NoSuchMethodError: org.springframework.beans.factory.xml.XmlBeanDefinitionReader.setEnvironment java.lang.NoSuchMethodError:org.springframework.beans.factory.support.DefaultListableBeanFactory.getDependencyComparator()Ljava / util / Comparator;“}} - java.lang.NoSuchMethodError: org.springframework.beans.factory.support.DefaultListableBeanFactory.getDependencyComparator()Ljava/util/Comparator;"}} java.lang.NoSuchMethodError: org.springframework.core.annotation.AnnotationUtils.isInJavaLangAnnotationPackage(Ljava/lang/annotation/Annotation;)Z - java.lang.NoSuchMethodError: org.springframework.core.annotation.AnnotationUtils.isInJavaLangAnnotationPackage(Ljava/lang/annotation/Annotation;)Z 引起:java.lang.NoSuchMethodError: org.springframework.web.bind.annotation.RequestMapping.path()[Ljava/lang/String; - Caused by: java.lang.NoSuchMethodError: org.springframework.web.bind.annotation.RequestMapping.path()[Ljava/lang/String; java.lang.NoSuchMethodError org.springframework.core.annotation.AnnotationUtils.getAnnotation - java.lang.NoSuchMethodError org.springframework.core.annotation.AnnotationUtils.getAnnotation java.lang.NoSuchMethodError:org.springframework.core.annotation.AnnotatedElementUtils.findMergedAnnotation - java.lang.NoSuchMethodError: org.springframework.core.annotation.AnnotatedElementUtils.findMergedAnnotation java.lang.NoSuchMethodError:org.springframework.beans.support.ResourceEditorRegistrar。 <init> - java.lang.NoSuchMethodError: org.springframework.beans.support.ResourceEditorRegistrar.<init>
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM