Maven构建SpringMVC环境报错“java.lang.ClassNotFoundException: org.springframework.web.servlet. DispatcherServlet”

今天朋友发了个maven项目给我看,问我为什么启动不了。说实话,一直用Jfinal都快不会用spring了… 还是决定看看。

接收了文件,是maven构建的,打开eclipse,导入maven项目,然后部署到tomcat,启动tomcat,就报错了:“java.lang.ClassNotFoundException: org.springframework.web. servlet.DispatcherServlet”,错误信息如下图:

java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet

java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet

很明显的第一反应就是没有SpringMVC的包,于是检查pom.xml,发现没有问题,spring web mvc包是正确引入了的,查看Maven Dependencies,发现也是正常的,打开jar包,也没有问题,web.xml配置也没有问题…

我去,难道jar包版本问题,于是部署了更高版本的jar包,并且还试过配置更高的JDK版本,依然报错,不能启动…

于是google,发现大部分人都是说没有导入jar包,没有部署成功,可是jar包我导入了,也配置正确了。

就在这时,突然看到有个人说tomcat是否部署成功,于是立刻查看网站部署的文件夹,发现WEB-INF下根本没有lib文件夹…

原因找到了,但是为什么没有正确的部署呢,突然想到有个叫“Deployment Assembly”的配置,马上打开项目属性,找到该栏配置,果不其然,Maven Dependencies果然没有配置到WEB-INF/lib下,于是立刻配置,如下步骤:

Add -> Java Build Path Entries -> Next -> Maven Dependencies -> Finish -> Ok,配置完后如下图:

Maven Dependencies部署到WEB-INF/lib下

Maven Dependencies部署到WEB-INF/lib下

完成后再次启动tomcat,Perfect,就搞定了!

本文《Maven构建SpringMVC环境报错“java.lang.ClassNotFoundException: org.springframework.web.servlet. DispatcherServlet”》来自 www.juwends.com ,欢迎转载或CV操作,但请注明出处,谢谢!