找不到org.springframework.web.context.ContextLoaderListener类

阿伦

当我使用eclipse和maven创建一个新的Spring MVC项目时,当我以maven build(目标是tomcat:run)运行时,它会引发以下错误。清洁并安装后,我进行了构建。

严重:配置类org.springframework.web.context.ContextLoaderListener的应用程序侦听器时出错

java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener

  1. 解决此问题的其他方法是从项目属性中将Maven依赖项添加到部署程序集中。
  2. 但是,当我右键单击属性时,部署组装选项不存在。
  3. 我也尝试过手动添加spring.jar。
  4. Maven依赖项中存在类org.springframework.web.context.ContextLoaderListener,并且仍然引发错误。

pom.xml

我的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>com.org</groupId>
    <artifactId>Remindem</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>Remindem</name>
    <url>http://maven.apache.org</url>

    <dependencies>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.0.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.maven</groupId>
            <artifactId>maven-plugin-api</artifactId>
            <version>2.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>3.6.8.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-validator</artifactId>
            <version>4.0.0.Beta2</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>
        <dependency>
            <groupId>javassist</groupId>
            <artifactId>javassist</artifactId>
            <version>3.12.1.GA</version>
        </dependency>
        <dependency>
            <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
            <version>1.4</version>
        </dependency>

        <!-- Spring framework -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring</artifactId>
            <version>2.5.6</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>3.0.5.RELEASE</version>
            <scope>provided</scope>

        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>3.2.3.RELEASE</version>
            <scope>provided</scope>
        </dependency>


        <!-- Spring MVC framework -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>2.5.6</version>
            <scope>provided</scope>
        </dependency>

        <!-- JSTL -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.1.2</version>
        </dependency>

        <dependency>
            <groupId>taglibs</groupId>
            <artifactId>standard</artifactId>
            <version>1.1.2</version>
        </dependency>


        <!-- for compile only, your container should have this -->
        <!-- <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> 
            <version>2.5</version> <scope>provided</scope> </dependency> -->

        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-api</artifactId>
            <version>7.0.19</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
    <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.0</version>
        <configuration>
          <url>http://localhost:8080/Remindem</url>
        </configuration>
      </plugin>
        </plugins>
    </build>
</project>

web.xml

我的web.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <display-name>Remindem</display-name>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>

     <servlet>
        <servlet-name>svn</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>
                /WEB-INF/SpringAppServlet.xml               
            </param-value>
        </init-param>
    <load-on-startup>1</load-on-startup>
</servlet> 
 <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
        /WEB-INF/SpringAppServlet.xml
    </param-value>
</context-param> 


 <servlet-mapping>
    <servlet-name>svn</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping> 

 <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

</web-app>
盖里坦

这是因为您<scope>provided</scope>在maven pom.xml上标记了Spring依赖项,并且在运行程序时未在类路径中包含实际的jar。有两种可能的解决方案:

  1. 将依赖范围更改为编译
  2. 在运行应用程序时,将与版本匹配的Spring jar包含到您的类路径中

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Tomcat和Spring Web-找不到类异常org.springframework.web.context.ContextLoaderListener

找不到类org.springframework.web.context.support.ServletContextPropertyPlaceholderConfigurer

ClassNotFoundException :: org.springframework.web.context.ContextLoaderListener

严重:错误配置类 [org.springframework.web.context.ContextLoaderListener] NoClassDefFoundError: javax/servlet/ServletContextListener

java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener

找不到类org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration]

找不到org.springframework.web.context.support.XmlWebApplicationContext类在EAP上的Fuse 7.1.0中部署WAR

找不到 org.springframework.web.WebApplicationInitializer

在 Spring Web 应用程序中找不到类 [org.springframework.scheduling.quartz.SchedulerFactoryBean]

log4j:WARN找不到记录器的附加程序(org.springframework.web.context.support.StandardServletEnvironment)

找不到 org.springframework.web.servlet.mvc.SimpleFormController

无法初始化类org.springframework.web.context.request.ServletRequestAttributes

org.springframework.beans.factory.CannotLoadBeanClassException:找不到类

java.lang.NoClassDefFoundError:org / springframework / web / context / ContextCleanupListener问题

org.springframework.web.client.RestClientException:无法编写请求:找不到适合请求类型的HttpMessageConverter

Spring cloud Feign:找不到适合响应类型的HttpMessageConverter [class org.springframework.web.servlet.ModelAndView]

找不到org.springframework.beans.factory.annotation.Autowire的类文件

在xml配置文件中找不到类[org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean]

启动spring时出错,找不到类[org.springframework.ws.config.annotation.WsConfigurationSupport]

org.springframework.context.NoSuchMessageException:在代码“ Size.userForm.username”下找不到语言环境“ en_US”的消息

向类org.springframework.web.context.request.RequestContextListener的侦听器实例发送请求初始化的生命周期事件的异常

引起原因:java.lang.ClassNotFoundException:org.springframework.web.context.request.RequestAttributes

java.lang.NoSuchMethodError:org.springframework.web.context.request.ServletRequestAttributes。<init>

java.lang.NoSuchMethodError:org.springframework.web.context.support.ServletContextAwareProcessor:方法<init>()V未找到

Spring MVC Webapp-java.lang.ClassNotFoundException:org.springframework.web.context.support.ServletRequestHandledEvent

错误:org.springframework.web.context.ContextLoader - 上下文初始化失败 [context-security.xml]

org.springframework.web.servlet.PageNotFound noHandlerFound; 警告:在DispatcherServlet中找不到具有URI的HTTP请求的映射

...中构造函数的参数0需要找不到类型为'org.springframework.web.client.RestTemplate'的bean

春季4-找到了接口org.springframework.test.context.TestContext,但是期望使用类