maven下配置好springmvc 启动tomcat 服务器 出现 error
java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:525)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:507)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:126)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1099)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1043)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4957)
at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5284)
at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5279)
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)
报这个错是因为 tomcat 找不到 DispatcherServlet
很大可能是spring-servlet.xml 和web.xml 对DispatcherServlet 配置不成功
我当时使用了两种解决办法,
一种是把springmvc 所有的jar 放到WEB-INF/lib 手动Building 但是后面发现使用jstl的时候可能会发生jar包的冲突这个就去stackoverflow找到了帖子
http://stackoverflow.com/questions/11227395/java-lang-classnotfoundexception-org-springframework-web-servlet-dispatcherserv
第二种 方法就是热心网友提供的一种解决办法,意思是在project 加入maven 的依赖
You need to add the “Maven Dependency” in the Deployment Assembly
right click on your project and choose properties.
click on Deployment Assembly.
click add
click on “Java Build Path Entries”
select Maven Dependencies”
click Finish.
Rebuild and deploy again
Note: This is also applicable for non maven project.