【问题标题】:Jars not copied to Tomcat's lib folder罐子没有复制到 Tomcat 的 lib 文件夹
【发布时间】:2011-08-27 20:56:02
【问题描述】:

我正在做一些基本的春季工作,但在某个时候卡住了。 每当我在 Tomcat 上部署我的应用程序时,我都会收到 ClassNotFoundException

我观察到 jar 没有复制到 Tomcat 的 lib 文件夹中。 当我手动将 jar 复制到 Tomcats lib 文件夹时,它工作正常。

如果我犯了任何错误,请告诉我。

PS - 我正在使用 Spring 工具套件 2.6.0、Tomcat 6 及其一个 Maven 项目。

谢谢。

【问题讨论】:

  • 你能看到库'Maven Dependencies'吗?你的罐子在里面吗?在项目属性/部署程序集中你能看到“Maven 依赖项”吗?它的部署路径是“WEB-INF/lib”吗?
  • 得到了解决方案。尝试按照“转到您的项目属性-> 部署程序集页面。此页面描述了如何打包您的应用程序以进行部署或导出。并添加了新源“Maven 依赖项”。它解决了问题,所有 jar 都被复制到了 tomcat。

标签: java eclipse spring maven tomcat


【解决方案1】:

转到“项目属性 -> 部署程序集页面”。
本页描述了如何打包您的应用程序以进行部署或导出。并添加了新的源“Maven 依赖”。

从部署程序集页面,单击添加...按钮 然后选择“Java Build Path Entries” “Maven 依赖”应该在列表中

它解决了这个问题,所有的 jar 都被复制到了 tomcat

【讨论】:

  • 在 Eclipse Juno 中:项目属性 -> 部署程序集 -> 添加(按钮)-> Java 构建路径条目(选择)-> Maven 依赖项(选择并单击完成)
  • 有谁知道为什么“Maven 依赖项”没有出现在部署程序集下的 Java 构建路径条目列表中?本周早些时候它就在那里,并且我的项目没有任何变化,它现在没有出现......而且我一生都无法弄清楚为什么。
  • 有时尽管配置了 JAR,但不会复制 JAR。然后我建议清理 Tomcat 并在 Eclipse 中重新发布模块。
  • @delfuego,你找到答案了吗?我和你有同样的问题
【解决方案2】:

如果你为你的maven项目定义了“war”打包,那么你的依赖库应该被Maven WAR plugin自动复制到创建的.war文件的WEB-INF/lib目录中。

【讨论】:

  • 感谢您的建议。得到解决方案,请查看我对问题的评论。
【解决方案3】:

将你的 jars 放在 WEB-INF/lib 目录中: 在项目属性 -> 部署程序集中,您应该有一个 /web 的源和一个 / 的部署路径。如果存在,那么 web/WEB-INF/lib 目录中的任何 jar 都将被类加载器部署和拾取。请注意,子目录不会被拾取,因此请将您的 jar 直接放在 lib 目录中。

【讨论】:

    【解决方案4】:

    您在 cmd 或 bash(放置您的 pom.xml 文件的位置)中运行三个命令来获取 jar 文件并将其复制到您的 WEB-INF/lib 文件夹中

    mvn compile
    mvn package
    mvn install
    

    我发现只有这样才能解决我的问题:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-20
      • 2020-01-11
      • 2016-01-06
      • 2023-03-04
      • 1970-01-01
      • 1970-01-01
      • 2020-10-11
      • 1970-01-01
      相关资源
      最近更新 更多