【问题标题】:Maven does not create the "/target/m2e-wtp/web-resources" folderMaven 不创建“/target/m2e-wtp/web-resources”文件夹
【发布时间】:2014-09-15 08:12:03
【问题描述】:

我正在使用 Eclipse Luna。我正在做一个 Maven 项目。当我尝试在 weblogic 的应用程序服务器上运行我的应用程序时,会抛出异常消息:

weblogic.application.ModuleException: [HTTP:101027][WebAppModule(_auto_generated_ear_:MyAppName)] Document root: "D:\MGelbana\workspace\my-app-name\target\m2e-wtp\web-resources" does not exist.

我查看了项目的部署程序集配置,发现如下错误信息:Cannot find entry: "/target/m2e-wtp/web-resources"

所以我认为 Luna 的默认 Maven 安装不是我需要的,我将其卸载并从该 URL (http://download.eclipse.org/m2e-wtp/releases/luna/) 安装了 M2E-WTP,但我相信我最终得到了相同的版本和相同的选项。

我了解此插件可以选择生成此文件夹 /target/m2e-wtp/web-resources,这有助于 Eclipse 将应用程序部署到应用程序服务器中(Run on server 选项)

(这是我的最终目标,但我在部署时遇到了问题 具有所需依赖项的应用程序。如果我生成 通过Installing maven 项目并部署生成的应用程序的 WAR 文件 该 WAR 手动,应用程序工作,但我需要能够调试\运行 它使用 Eclipse 在应用程序服务器上。)

但是这个文件夹(即/target/m2e-wtp/web-resources)没有被创建!

在 Eclipse 的Maven > Java EE Integration > WAR project preferences > Maven archiver generated files under the build directory (I checked this option)

在项目特定选项中,我只有一个Maven菜单和一个生命周期映射子菜单,与maven归档器是否生成文件无关!

那么如何让maven输出WTP相关文件呢?

【问题讨论】:

    标签: maven maven-plugin m2eclipse m2e m2e-wtp


    【解决方案1】:

    我在同一个问题上苦苦挣扎了几天。最终,以下步骤对我有用。

    • 从 Eclipse 市场安装 m2e-wtp(如果尚未安装)
    • 打开项目首选项 -> 项目构面 -> 运行时 -> 选择您选择的运行时(在我的例子中是 Tomcat 7)

    【讨论】:

    • 我不需要安装 m2e-wtp,您的第二步解决了我的问题。
    • 谢谢。 m2e-wtp 已经安装在我的 Eclipse 上。我刚刚按照您的第二步进行了操作。
    【解决方案2】:

    刚刚在火星上发生过这种情况。

    通过禁用动态 Web 模块方面然后重新启用它来修复它。

    【讨论】:

    • @Thomas,你是怎么做到的?我也有同样的问题。
    【解决方案3】:

    遇到同样的问题。我解决了它,删除了部署程序集下的“/target/m2e-wtp/web-resources”。然后 Maven -> 更新项目。

    【讨论】:

      【解决方案4】:

      如果 Eclipse (Luna) 将项目视为“WAR 项目”,它只会在构建路径(/target/m2e-wtp/web-resources)下生成 Maven Archiver 文件。

      根据经验,这似乎是任何具有动态 Web 模块方面的项目。如果项目已经是 Faceted Form 项目,请添加构面并构建您的项目。如果没有,请选择 [Configure -> Convert to Faceted Form...] 菜单选项并从那里开始。

      对于作为“现有 Maven 项目”导入的项目,Eclipse 通常会为您设置此项。但是,如果您刚刚将项目从版本控制中检查出来,或者将项目创建/导入为“标准”Java 项目,则可能还没有完成。

      【讨论】:

        【解决方案5】:

        禁用“自动构建”选项并再次手动构建对我有用。

        【讨论】:

        • 类似的问题。忘记启用“自动构建”
        【解决方案6】:

        我在使用 Weblogic 时遇到了这个问题。我去了 (project)/target/m2e-wtp 并手动创建了 web-resources 文件夹。

        【讨论】:

        • 创建完这个目录后,别忘了做maven update,然后clean/build,然后去project/deployment assemly,检查/target/m2e-wtp/web-resources有deploy路径=/。最后,如果您看到一条警告消息说“maven2_classpath_container 将不会被导出”,然后选择该警告消息,按 Ctrl+1 并将其标记为已导出。
        【解决方案7】:

        我有同样的问题,我可以通过添加来解决它 <packaging>war</packaging> 到我的pom.xml 文件中的project 标记。

        【讨论】:

          【解决方案8】:

          需要更新maven项目>右键项目>点击Maven>更新项目。

          【讨论】:

            【解决方案9】:

            只需花几个小时尝试这个冗长的线程中描述的每个解决方案...直到我发现隐藏在首选项中的东西之前没有任何效果...

            解决方案很简单:首选项 -> Maven -> Java EE 集成 -> 启用 Java EE 配置

            为什么它首先被禁用对我来说永远是个谜......

            【讨论】:

              【解决方案10】:

              转到 Windows 菜单>首选项>选择 Maven>Java EE 集成>取消选中 WAR 项目 Preferences()

              【讨论】:

                【解决方案11】:

                嘿,我也面临着类似的问题,我只是通过使用下面的配置添加了上述内容: 配置 >> 添加项目档案支持

                【讨论】:

                  【解决方案12】:

                  我遇到了这个问题,其他答案都没有对我有用。我通过右键单击 Package Explorer 中的项目并选择 Build Project 解决了这个问题。这导致出现丢失的 m2e-wtp 文件夹。

                  【讨论】:

                    【解决方案13】:

                    我正在使用 linux mint,我在 ~.m2/repository ".lock" 文件中找到 1-我删除了它。 2- 我运行 maven clean 并且它对我有用。

                    注意:这是我对许多 maven 问题的解决方案,因为“.lock”会阻止 maven 在磁盘上工作。所以我希望它能在许多其他问题上帮助你。

                    【讨论】:

                      【解决方案14】:

                      tomcat 插件或应用程序没有问题,它只需要偶尔刷新一次。另外,因为 Maven 正在清理目标。我只需要设置我的 Maven 构建来刷新项目,包括目标文件夹。

                      Check the option to automatically refresh resources in your maven build

                      【讨论】:

                        【解决方案15】:

                        1) 我已通过从 ~.maven/repository ".lock" 文件夹中删除 lock 文件夹进行修复。
                        2) 打开项目首选项 -> 项目方面 -> 运行时 -> 选择您选择的运行时。
                        3)需要更新maven项目>右键项目>点击Maven>更新项目。

                        就是这样,我的问题已经解决了。

                        【讨论】:

                          【解决方案16】:

                          有几件事可以尝试..

                          1. 就像 Tharaka 建议的那样 .. 从 eclipse 市场安装 m2e-wtp(如果尚未安装)

                          之后,尝试依次执行以下操作。其中一项或多项可能有助于解决您的问题。我正在使用最新的 Eclipse(4.18)。

                          1. 右键单击项目-> 属性-> DeploymentAssembly -> 删除 /target/m2e-wtp/web-resources 文件夹。清理项目并再次运行。

                          2. 如果运气不好,试试这个,打开项目首选项 -> 项目构面 -> 运行时 -> 选择您选择的运行时。确保它与您使用的 JDK、JRE 版本兼容。 (我将 Tomcat 9 用于 JDK 11、JRE11)

                          3. 还是不行,右键项目 -> 运行方式 -> Maven Clean。其次是 Maven 安装。

                          4. 执行步骤 2,3,4 并清理项目并再次在服务器上运行。

                          如果有帮助,请点赞!谢谢!

                          【讨论】:

                            【解决方案17】:

                            这是由于 eclipse 中的 m2e-wtp 和 m2e 插件之间的冲突。卸载 m2e 插件,因为它已包含在您的 m2e-wtp 插件中。重新启动,瞧!

                            【讨论】:

                              猜你喜欢
                              • 2013-01-17
                              • 1970-01-01
                              • 2013-04-28
                              • 1970-01-01
                              • 1970-01-01
                              • 1970-01-01
                              • 1970-01-01
                              • 1970-01-01
                              • 2014-10-14
                              相关资源
                              最近更新 更多