maven 项目 启动时异常:ClassNotFoundException

maven 项目 启动时异常:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListen


在项目web.xml中配置:


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


部署到tomcat中启动时报异常:

Java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1643)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1488)
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:4458)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5004)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:4999)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)


找不到ContextLoaderListener类,而ContextLoaderListener类在spring-web 架包中是存在的,如下:

扫描二维码关注公众号,回复: 8780638 查看本文章



原因是未将maven管理的架包构建到WEB-INF/lib目录下,在部署到tomcat时项目缺少lib目录,导致找不到spring-web 架包中的ContextLoaderListener类


解决方案:

RC(right click on web project) --> properties --> Deployment Assembly --> Add --> Java Build Path Entries --> Next -->Maven Dependencies --> finish

重新署部项目后,tomcat项目目录下已存在lib目录,lib目录下有所有maven管理的架包,启动后正常



原文:

http://blog.csdn.net/u012956537/article/details/49382623


发布了24 篇原创文章 · 获赞 10 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/lin___/article/details/76618869