服务器启动时出现Tomcat“未找到方法”错误

时间:2019-12-18 20:33:03

标签: java spring maven tomcat

我目前正在从事Spring动态Web项目。在Tomcat启动时,出现以下错误:

SEVERE: StandardWrapper.Throwable
java.lang.NoSuchMethodError: org.springframework.core.io.ResourceEditor.<init> 
(Lorg/springframework/core/io/ResourceLoader;)V
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:102)
at javax.servlet.GenericServlet.init(GenericServlet.java:158)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1183)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1099)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:989)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4931)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5241)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

我已经查看了有关此问题的其他几个问题,建议的问题是从属问题。我去了,将springframework.core的版本更改为以前的版本,但这没有任何改变。

Pom.xml:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema- 
    instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven- 
    4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>Spring-mvc-Test</groupId>
    <artifactId>Spring-mvc-Test</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>Spring-mvc-Test</name>
    <build>
    <sourceDirectory>src</sourceDirectory>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.0</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.2.1</version>
        <configuration>
          <warSourceDirectory>WebContent</warSourceDirectory>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <dependencies>
    <dependency>
        <groupId>springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>1.2.6</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>5.2.2.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>spring</groupId>
        <artifactId>spring-beans</artifactId>
        <version>1.0.2</version>
        <type>dtd</type>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>5.2.2.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>5.2.2.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot</artifactId>
        <version>2.2.2.RELEASE</version>
    </dependency>
  </dependencies>
</project>

如何解决此问题?将来如何准确诊断此类问题?

1 个答案:

答案 0 :(得分:2)

您的依赖项一团糟。我看到了Spring Boot的依赖关系。您是否正在尝试创建Spring Boot项目?如果是这样,请转到https://start.spring.io。对于Spring来说,最重要的一点是确保所有基本Spring库都具有相同的版本。为了帮助您解决Maven BOM机制的存在(在Spring Boot中使用了类似的技术):https://www.baeldung.com/spring-maven-bom