ClassNotFoundException DispatcherServlet when launching Tomcat (Maven dependencies not copied to wtpwebapps)

旧巷老猫 提交于 2019-11-27 06:49:42

Take a look at "Deployment Assembly" section under project properties. The content of this page specify how your project is to be assembled into a running application. In particular, this is the place where you can control which of the libraries that your project references, should be packaged with it. Select Add -> Java Build Path Entries. You will be able to pick among your existing build path entries to include in the assembly.

The quick fix that you found did the same thing for you. If you are curious about what happens under the covers, take a look at your .classpath file before and after the quick fix. The quick fix tags the classpath entry with some assembly information.

Muskan

Check .class file and replace the following entry

**<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER" />**

with Below:-

**<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER">
  <attributes>
    <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
  </attributes>
</classpathentry>**

It worked for me.

Andrius Kurtinaitis

It seems, you have to additionally install Maven Integration for WTP plugin. Its description can be found at issues.sonatype.org.

I ran into this problem today, on a project that had been working for a long time. I tried all of the above solutions, but (1) I wasn't seeing the warning in the Problems panel as the poster had; (2) my Deployment Assembly Java Build Path Entries was not showing anything else available to deploy; (3) the .classpath entry for org.eclipse.jst.component.dependency was already there; and (4) I already had Maven Integration for WTP installed. I finally removed my project from the Tomcat server and then re-deployed it, and the problem disappeared.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!