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

本文介绍了解决Eclipse Maven项目启动时出现“Cannot change version of project facet Dynamic web module to 3.0”错误及找不到类的问题,通过修改配置文件和执行Maven更新解决了该问题。

eclipse maven 项目,一直都运行得好好的,某天不知道具体做了什么操作,突然就开始报这个错,且eclipse中项目上有红叉提示错误,但是错误找不到,类似下图:


在eclipse Markers面板中,可以看到如下错误:

Cannot change version of project facet Dynamic web module to 3.0




这个时候,启动tomcat就会报错,java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener,但是可以确定项目中pom.xml文件中正确引用了相关jar包(关键之前一直都运行好好的)。

此时,进入eclipse集成tomcat的路径:eclipse设置的workspace目录下的 .metadata/.plugins/org.eclipse.wst.server.core 目录,里边的tmp0(如果eclipse中添加了多个tomcat,那么依次还会有tmp1、tmp2等目录),在进入部署的目录wtpwebapps目录,可以看到自己的项目根目录,进入WEB-INF/lib查看jar包,发现里边一个maven引用的jar包都没有。。。,所以报找不到类。


估计应该主要还是eclipse和maven集成还是有些问题。。


先处理Markers中的错误:Cannot change version of project facet Dynamic web module to 3.0,按照网上别人的方法,修改项目目录下.settings/org.eclipse.wst.common.project.facet.core.xml文件,将  <installed facet="jst.web" version="2.3"/>版本改为3.0即可。


然后在项目上执行 maven update project...   注意选中下边操作:


执行完后,发现项目上的红叉消失了。


再重新部署到tomcat启动,好了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值