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

我包括:

  • 所有的spring库存

  • Apache Tomcat 7.0库

    在构buildpath

但它仍然给错误:

SEVERE: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:415) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:397) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4660) at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226) at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Jun 2, 2011 11:07:38 AM org.apache.catalina.core.StandardContext listenerStart SEVERE: Error configuring application listener of class org.springframework.web.context.request.RequestContextListener java.lang.ClassNotFoundException: org.springframework.web.context.request.RequestContextListener at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:415) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:397) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4660) at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226) at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Jun 2, 2011 11:07:38 AM org.apache.catalina.core.StandardContext listenerStart SEVERE: Error configuring application listener of class com.sun.faces.config.ConfigureListener java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:415) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:397) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4660) at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226) at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) 

在“org.sprintframework.web-3.1.0.M1.jar”中,我可以看到“org.springframework.web.context.ContextLoaderListener”。

有人在Google上说,应该包含spring.jar,但在3.x发行版中没有看到任何spring.jar。

Eclipse 3.6.2 Tomcat 7

编辑:有人说,“自动更新依赖关系”应该在项目属性中检查,但在项目属性中没有看到类似的东西。 ClassNotFoundException:org.springframework.web.con text.ContextLoaderListener

在Eclipse托pipe的Tomcat中运行Spring Web应用程序时遇到了类似的问题。 我通过在项目的Web部署程序集中添加Maven依赖项来解决这个问题。

  1. 打开项目的属性(例如,右键单击项目浏览器中的项目名称,然后select“属性”)。
  2. select“部署大会”。
  3. 点击右边的“添加…”button。
  4. 从Directive Type的菜单中select“Java Build Path Entries”,然后点击“Next”。
  5. 从Java Build Path Entries菜单中select“Maven Dependencies”,然后单击“Finish”。

您应该看到“Maven依赖关系”添加到Web部署程序集定义。

使用Eclipse WDT时,同样的事情时常发生在我身上。 当这种情况发生在一个未经修改和以前正在进行的项目中时,它特别令人沮丧。 这是我在这最后一个场景中解决它的方法:

  1. 停止Tomcat(如果它正在运行)
  2. 打开“服务器”视图:窗口>显示视图>其他>服务器>服务器
  3. 右键单击Tomcat服务器>清理Tomcat工作目录。
  4. 右键单击Tomcat服务器>清理
  5. 重新启动服务器

这通常会解决您提到的问题。

你可以尝试“清理Tomcat的工作目录”或干脆“清理..”。 这应该放弃所有发布的状态,并从头开始重新发布。

我用的是IntelliJ IDEA,编译成功了,但是启动Tomcat时说:

 Error configuring application listener of class org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 

一开始,我认为JAR不见了,但是已经到位了。

解决scheme: File > Project Structure > Artifacts ,在Output Layout双击右侧面板中的Available Elements库命名为Maven:... ,它将被移到左窗格中的WEB-INF/lib

接受并重新启动Tomcat。

这肯定是Eclipse相关的问题。 为我工作的东西是在eclipse服务器选项卡中创build一个新的服务器。 然后运行你的应用程序在这个新的服务器,它应该工作。

你必须至less使用spring-core的3.2.8.RELEASE

对于Maven,在你的pom.xml设置:

 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>3.2.8.RELEASE</version> </dependency> 

资料来源: http : //docs.spring.io/spring/docs/current/javadoc-api/org/springframework/cglib/core/SpringNamingPolicy.html ,自3.2.8开始。

如果你正在使用maven,也许这个项目还没有build成。 首先做一个'mvn clean package',然后再尝试重新部署。

我为Tomcat 7运行时configuration的eclipse项目面临同样的问题

右键单击项目并转到项目属性。 点击部署大会。 我可以注意到,我在编译期间用用户库创build的弹簧库jar包丢失了。 只要添加jar子,你应该看到在tomcat启动时在控制台没有错误

如果上述所有内容都不起作用,请尝试以下操作。 它为我工作。

从服务器中删除项目>重新启动服务器>将您的项目添加到服务器>重新启动服务器。

详细说明:

 1. Right click on server > Add and Remove 2. Select your project > Remove > Finish 3. Restart your server 4. Right click on server > Add and Remove 5. Select your project > Add > Finish 6. Restart your server again. 

Eclipse Luna解决scheme:

  1. 右键单击maven web项目
  2. 点击“属性”菜单
  3. selectpopup窗口左侧的“部署程序集”
  4. 点击popup窗口右侧的“添加…”button
  5. 现在再出现一个popup窗口(New Assembly Directivies)
  6. 点击“Java Build path entries”
  7. 点击“下一步”button
  8. 点击“Finish”button,现在自动closuresNew Assemby Directiviespopup窗口
  9. 现在点击“应用”button和确定button
  10. 运行你的web应用程序

其实这是Tomcat的问题。 只要去你的项目的“lib”文件夹,并将你所有的“spring”相关的jar子复制到这个。 刷新你的项目,你都很好去。 这个问题一直存在,因为tomcat无法findSpring核心类。

我试过了

  • 项目清洁mvn
  • 清洁
  • 干净的Tomcat工作目录自动
  • 更新依赖关系

唯一至less暂时工作的是将Maven Dependencies添加到Web部署程序集定义中

但是这不能永远工作! 几天后,它停止工作。 我的解决scheme是删除Maven Dependencies,应用更改并再次添加Maven Dependencies。

我正在使用 – eclipse Juno – embedded式maven – tomcat 7

对于Gradle用户,它使用以下步骤

1)在eclipse中从服务器选项卡中停止并删除 tomcat服务器

eclipse tomcat选项卡

2)从tomcat安装中清除webapp和工作目录 (参考,操作方法:清除Tomcat的caching并修复过时的JSP问题 )

 $ rm -r /usr/local/AT7028/work/* $ rm -r /usr/local/AT7028/webapps/WAR_NAME 

3)使用构build工具清理和消除项目

$ ./gradlew clean eclipse //为mvn用户激发各自的命令, $ mvn clean package

4)在eclipse中configuration一个新的Tomcat服务器,并再次运行该项目。

我也面临同样的问题….并通过以下步骤解决:

RC(右键单击web项目) – > properties – > Deployment Assembly – > Add – > Java Build Path Entries – > Next – >select缺less的jar文件 – > next – > finish

应用程序正在成功运行

我有同样的问题,我已经解决了上述步骤,但没有当我再次遇到这个问题,我尝试以下,

RC(右键单击web项目) – > properties – > Deployment Assembly – > Add – > Java Build Path Entries – > Next – >

点击下一个后,只有一个空白的窗口,select下一个和芬兰disabled.What我现在可以做什么?

我面临同样的问题。

刚刚从configuration中删除了服务器,并在重新启动eclipse之后将其添加到服务器运行时环境中,将其添加回来。

对我来说,解决方法是右键单击我的Web应用程序模块> Maven>更新项目

我喜欢的一个快速解决scheme是我最适合这种情况的只是删除工作空间的.metadata文件夹并再次导入您的项目。 如果你尝试所有其他选项,它不会保证成功。 有时上述解决scheme有时会花费你宝贵的时间来解决这个configuration。

有一天,我决定打扫我的工作站。我根据不同的客户将项目安排到合适的文件夹。 结果一切都搞砸了。 花了一整天后,它并没有在一个固定的工作空间中结束。 第二天,我只是删除工作空间的.metadata文件夹,并再次导入所有的项目。 宾果全部设置。

如果您使用的是Maven,请将<packaging>war</packaging>放在您的pom.xml中。 在这种情况下,也许是用jar子包装

您必须在部署汇编中拥有Maven库

使用“更新项目configuration”搞乱了项目的构buildpath。

修复:打开“configuration构buildpath…”菜单(右键单击项目),并修复每个源文件夹的包含/排除选项。 这对我有效。

在许多情况下,它是java方面的问题,jdk或jre或jsp版本是比maven项目面对不同。

对我来说,实际的解决scheme是安装“m2e-wtp – WTP的Maven集成”。 在这种情况下,马塞洛的解决scheme并不是必需的。

如果上面没有任何东西的话,从监听器类中移除.class

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

我也有同样的错误。 我没有在我的POM文件中添加下面的依赖项。

 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.1.7.RELEASE</version> </dependency> 

但是我的项目在我添加这个依赖之前就已经运行了。 但有一次,它停了下来,开始给出同样的错误。

如果有人不能解决这个错误,他们也可以通过这个链接来解决

这对我有用..

右键点击maven web project点击'Properties'菜单在popup的窗口左边select'Deployment Assembly'点击popup窗口右边的'Add …'button现在出现一个popup窗口(New Assembly Directivies)点击'Java Build path entries'点击'Next'button点击'Finish'button,现在自动closuresNew Assemby Directiviespopup窗口现在点击'Apply'button并确定button运行你的web应用程序

在我使用Gradle在IntelliJ项目中对Hibernate映射进行更改后,发生了这种情况。 简单地重build项目为我工作。

我四分之一的时间遇到​​过这种情况。 这一次,我在git diff中做了一个小小的更改总结,并将问题追踪到了eclipse中的重置类path(缺less我的WEB-INF / lib依赖项)。 这似乎发生在任何时候我拉或拉出父母/兄弟姐妹项目。

有提到将你的spring jar添加到tomcat web容器库 – 这是好的,并且是大多数EE服务器运行的方式。 但是请注意,通过在tomcat中的类加载器树中放置更高的弹簧,将会比战争上下文的类加载器级别更高。 我build议你把libs放在一个per / war较低级别的类加载器中。

在eclipse中的结构化项目更改之后,我们在截断的.classpath之后看到以下内容。

 Dec 18, 2016 11:13:39 PM org.apache.catalina.core.StandardContext listenerStart SEVERE: Error configuring application listener of class org.springframework.web.context.request.RequestContextListener java.lang.ClassNotFoundException: org.springframework.web.context.request.RequestContextListener 

我的类path被重置,WEB-INF / lib依赖关系被删除。

 <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> <attributes> <attribute name="maven.pomderived" value="true"/> <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/> </attributes> </classpathentry> 

放回去

 <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/> 

你会没事的

谢谢/ michael

当我在构buildpath中有lib,但没有在我的部署程序集中时,我得到了这个。 另外当我有一个遗漏的context.xml。

我遇到过同样的问题。 我通过在我的pom中添加spring-web dependency来解决这个问题。 确保使用具有ContextLoaderListener类的spring-web jar扩展ContextLoader实现ServletContextListener并驻留在包org.springframework.web.context中。 我使用了3.0.4.RELEASE

如果您使用的是IntelliJ IDEA,并且在Tomcat Server上部署应用程序,则说:在文件菜单 – >select项目结构 – >点击工件 – >select您的jar子并右键单击 – >放入WEB \ lib – >重新启动服务器 在这里输入图像描述