java.lang.classnotfoundexception:org.springframework.web.context.contextloaderlistener

guz6ccqo  于 2021-06-26  发布在  Java
关注(0)|答案(30)|浏览(508)

我在构建路径中包含了以下内容:
所有Spring自由基
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 应该包括在内,但我没看到 spring.jar 在3.x分布中。
日 eclipse 3.6.2
汤姆猫7
编辑:spring论坛(离线)上有人说“自动更新依赖项”应该在projectproperties中被选中,但我在projectproperties中没有看到类似的内容。

eeq64g8w

eeq64g8w16#

如果上面提到的一切都不起作用,请尝试以下方法。它对我有用。
从服务器中删除项目>重新启动服务器>将项目添加到服务器>重新启动服务器。
详细说明:

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.
gudnpqoy

gudnpqoy17#

你必须使用至少一个版本 3.2.8.RELEASE Spring芯。
对于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开始。

polkgigr

polkgigr18#

如果您使用的是maven,那么项目可能还没有构建。先做一个 mvn clean package 然后再次尝试重新部署。

xnifntxz

xnifntxz19#

如果上面的内容都不起作用,那么从listener类中删除.class。

&ltlistener>
&ltlistener-class>

org.springframework.web.context.ContextLoaderListener .class

</listener-class>
</listener>
aor9mmx1

aor9mmx120#

我每个季度都会碰到几次。这一次,我在git diff中有一个最小的更改摘要,并在eclipse中将问题跟踪到重置类路径(缺少web-inf/lib依赖项)。这似乎发生在我拉入或拉出父/兄弟maven项目的任何时候。
有人提到要将springjar添加到tomcatweb容器库中——这没问题,也是大多数ee服务器运行的方式。但是请注意,通过将spring放在tomcat的类加载器树的更高位置,您将比war上下文的类加载器级别运行得更高。我建议您将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

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

你会没事的。
谢谢你/迈克尔

pvcm50d1

pvcm50d121#

<packaging>war</packaging> 在pom.xml中,如果您使用的是maven。在这种情况下,可能是与罐 Package
部署程序集中必须有maven libs

zpjtge22

zpjtge2222#

对我来说,解决办法是右键单击我的webapp模块>maven>update项目

xj3cbfub

xj3cbfub23#

使用“更新项目配置”会弄乱项目的构建路径。
修复:打开“配置生成路径…”菜单(右键单击项目),修复每个源文件夹的包含/排除选项。对我有用。

3z6pesqy

3z6pesqy24#

我使用intellij idea,编译是成功的,但是启动tomcat时,它说:

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

一开始,我以为jar不见了,但它已经就位了。
解决方案: File > Project Structure > Artifacts ,在 Output Layout 在右面板中双击 Available Elements 图书馆名为like Maven:... ,它将被移动到 WEB-INF/lib 在左窗格中。
接受并重新启动tomcat。

2sbarzqh

2sbarzqh25#

在使用eclipsewdt时,同样的事情时常发生在我身上。当这种情况发生在一个未经修改的、以前正在工作的项目上时,它特别令人沮丧。这就是我在最后一个场景中修复它的方法:
停止tomcat(如果它正在运行)
打开“服务器”视图:窗口>显示视图>其他>服务器>服务器
右键单击tomcat服务器>清理tomcat工作目录。
右键单击tomcat服务器>清理
重新启动服务器
这通常能解决你提到的问题。

bxjv4tth

bxjv4tth26#

eclipse luna解决方案:
右键单击maven web项目
单击“属性”菜单
在弹出窗口的左侧选择“deployment assembly”
单击弹出窗口右侧的“添加…”按钮
现在又出现一个弹出窗口(新的装配方向)
单击“java构建路径条目”
单击“下一步”按钮
单击“完成”按钮,现在自动关闭新的装配方向弹出窗口
现在单击“应用”按钮和“确定”按钮
运行Web应用程序

gzjq41n4

gzjq41n427#

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

j2cgzkjk

j2cgzkjk28#

对于为tomcat7运行时配置的eclipse项目,我也面临同样的问题
右键单击项目并转到项目属性。单击部署程序集。我可以注意到我在编译时用一个用户库创建的spring库jar丢失了。只要添加jar,在tomcat启动期间,您应该不会在console中看到任何错误

8ljdwjyq

8ljdwjyq29#

对于gradle用户,它使用以下步骤
1) 在eclipse的servers选项卡中停止并删除tomcat服务器

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

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

3) 使用构建工具清理和隐藏项目 $ ./gradlew clean eclipse //消防指挥部 mvn 用户, $ mvn clean package 4) 在eclipse中配置一个新的tomcat服务器,然后再次运行该项目。

8yparm6h

8yparm6h30#

我也面临同样的问题。。。。通过以下步骤解决:
rc(右键单击web项目)-->属性-->部署程序集-->添加-->java构建路径项-->下一步-->选择缺少的jar文件-->下一步-->完成
应用程序正在成功运行。。。

相关问题