我在构建路径中包含了这些:

所有春季图书馆 Apache Tomcat 7.0库

项目在启动过程中仍然失败:

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。

有人在谷歌上说spring.jar应该包括在内,但我在3中没有看到任何spring.jar。x分布。

Eclipse操作 Tomcat 7

编辑:有人在Spring论坛(离线)说“自动更新依赖项”应该在项目属性中勾选,但我在项目属性中没有看到这样的东西。


当前回答

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

其他回答

我使用IntelliJ IDEA,编译是成功的,但是当启动Tomcat时,它会说:

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

一开始,我以为罐子不见了,但它还在。

解决方案: 文件>项目结构>构件,在输出布局中双击右侧面板的可用元素库命名为Maven:…,它将被移动到左侧窗格的WEB-INF/lib。

接受并重新启动Tomcat。

当我查看解决方案时,似乎问题总是阻止spring库被加载。这可能是依赖关系问题或部署问题。

在我的例子中,是maven存储库以某种方式损坏了。解决这个问题的方法是删除文件夹“C:\Users(我的名字)”。M2 \repository'和重建。

我每个季度都碰到过几次。这一次,我在我的git diff中有一个最小的更改摘要,并在eclipse中跟踪了一个重置类路径(丢失了我的WEB-INF/lib依赖项)。每当我加入或退出父母/兄弟姐妹的专业项目时,这种情况似乎都会发生。

有提到将spring jar添加到tomcat web容器库中——这是可以的,也是大多数EE服务器运行的方式。但是请注意,通过将spring放在tomcat上的类加载器树的更高位置,您将运行在war上下文的类加载器级别之上。我建议你把类库放在一个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

我的类路径被重置,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"/>

你会没事的。

谢谢你! /迈克尔

我也面临同样的问题。

只需从配置中删除服务器,并在重新启动eclipse后将其添加到服务器运行时环境中。

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