Maven依赖项未部署在EclipseTomcat实例上

Maven依赖项未部署在EclipseTomcat实例上,eclipse,spring,tomcat,maven,Eclipse,Spring,Tomcat,Maven,我正在使用Spring工具套件3.1,在将web应用程序部署到tomcat时遇到一些问题 当我点击“在服务器上运行”并且服务器启动时,它抛出著名的: java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener 因此,我检查了/wtpwebapps目录,发现项目已部署,但在lib文件夹中只有几个库。我完全不理解他们选择的理由。当然,与spring相关的库并不存在。有人能帮忙吗 这是我的

我正在使用Spring工具套件3.1,在将web应用程序部署到tomcat时遇到一些问题

当我点击“在服务器上运行”并且服务器启动时,它抛出著名的:

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

因此,我检查了
/wtpwebapps
目录,发现项目已部署,但在
lib
文件夹中只有几个库。我完全不理解他们选择的理由。当然,与spring相关的库并不存在。有人能帮忙吗

这是我的
org.eclipse.wst.common.comment
文件,可能有用:

<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="Checkup">
    <wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
    <wb-resource deploy-path="/" source-path="/WebContent" tag="defaultRootSource"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/java"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/resources"/>
    <property name="context-root" value="Checkup"/>
    <property name="java-output-path" value="/Checkup/build/classes"/>
</wb-module>

编辑:

您可以看到嵌入STS安装的maven插件列表(无定制)


通过右键单击项目-导航到部署程序集,然后添加maven依赖项库,将maven依赖项添加到部署程序集。

经过数小时的痛苦之后,问题似乎通过magics或其他方法解决了。修复这些问题的“神秘”程序如下:

  • 在tomcat上运行您的项目并获取错误
  • clean tomcat rclick--->clean(不清理工作目录),而您的项目仍在服务器上
  • 再次运行服务器
  • 棘手的部分是在web应用仍然部署时清理tomcat。我真的不知道它为什么有效。如果停止服务器、删除应用程序、清理服务器并重新部署应用程序,则会出现错误。
    我不敢进一步理解,我接受这个谜团。

    尼姆斯基的答案对我来说是正确的答案。只是不太具体。详细步骤是:右键单击项目->选择“属性”->搜索“部署程序集”->单击“添加”按钮->添加“依赖Maven”

    解决此问题的另一种方法是使用终端(Linux或Mac)或命令提示符(Windows)。导航到项目的文件夹并使用以下命令:

    mvn eclipse:eclipse -Dwtpversion=2.0
    
    命令成功执行后,将在项目的.settings文件夹中创建一个名为org.eclipse.wst.common.component的新文件


    启动服务器,它会自动选择所有依赖的库。

    STS是否包含maven插件,或者您正在使用maven插件?您可以在问题中看到插件规范已编辑,可能重复了任何特定的downvote原因,因为这完全解决了我在eclipse wtp(不是STS)中遇到的相同问题检查我的部署程序集是我的第一个猜测,但一切似乎都正常:maven依赖项存在并映射到WEB-INF/lib文件夹。在maven WEB项目中,依赖项已经添加到部署中。我从来没有做过任何特殊的事情来创建一个可部署的工件。此外,在Eclipse内部,在服务器上运行时不会创建程序集,因为即使是JSP更改也会触发一个完整的打包,包括测试等@DaveNewton我不止一次不得不手动添加maven库,其他人不得不:哦,我以为你指的是作为一个专业人士的集合。我不知道如何或为什么,但这对我来说也是有效的。部署程序集已经添加了Maven依赖项,目标为“WEB-INF/lib”,但它不起作用。我试过这个,它成功了。谢谢