idea调试web项目时出现:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderL解决方案

Posted 小小本科生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了idea调试web项目时出现:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderL解决方案相关的知识,希望对你有一定的参考价值。

问题症状:

当我在使用idea调试springMVC项目时控制台输出如下错误信息

07-May-2019 09:31:54.892 严重 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
07-May-2019 09:31:54.892 严重 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal Context [/spring_war_exploded] startup failed due to previous errors

查看Tomcat Localhost Log日志时显示

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1363)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1186)
	at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:540)
    ...

也就是springframework中的ContextLoaderListener没有找到

错误原因:

我检查了一下,发现工程部署后在WEB-INF文件夹下没有生成lib目录,正常情况下,会生成lib目录并把工程的所有依赖jar包都部署到该目录下。

解决方案:

File->Project Structure点击左侧的Artifacts,然后找到Output Layout选项卡

右键单击Available Elements下面的项目名称,选择Put into Output Root

操作之后会发现WEB-INF目录下出现了lib目录

好了,大功告成。重新运行项目就可以了。

                

以上是关于idea调试web项目时出现:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderL解决方案的主要内容,如果未能解决你的问题,请参考以下文章