【问题标题】:Using m2e plugin in a Dynamic Web Project在动态 Web 项目中使用 m2e 插件
【发布时间】:2012-01-18 19:57:41
【问题描述】:

我在 Eclipse Indigo 中有一个现有的动态 Web 项目并安装了 m2e 插件。在我不太记得的另一个版本的 Eclipse 设置中(我的硬盘崩溃了),我可以右键单击项目 -> Maven -> 启用依赖关系管理。

在我当前的 Eclipse 版本中,我的动态 Web 项目没有此菜单。现在该怎么走?我尝试右键单击项目文件夹 -> 配置 -> 转换为 Maven 项目,但失败并出现错误。

【问题讨论】:

    标签: java eclipse maven m2e


    【解决方案1】:

    M2Eclipse 已从 Sonatype 迁移到名为 m2e 的 Eclipse 项目。因此,在您的 Eclipse Indigo 中,您已经安装了 m2e,而旧 Eclipse 版本中的旧 Maven 项目是根据您的右键单击描述使用 M2Eclipse 创建的。现在在正常情况下,一切都应该完美无缺,我们不会有这个讨论。不幸的是,随着项目的迁移,命名空间已从 org.maven.ide.eclipse 更改为 org.eclipse.m2e.core,并且使用 M2Eclipse 创建的旧 Maven 项目不会立即被识别为 m2e 中的 Maven 项目。 Here's a description 了解如何相应地迁移您的项目。

    【讨论】:

    • 好的。但是如何让新建的WTP项目被识别为maven项目,包括依赖管理等呢?
    • 你想要 WTP 支持来运行你的 maven 项目,大概是一个 webapp,比如说来自 eclipse 的 tomcat,不是吗?在 M2Eclipse 时代,有一个 M2Extras url,您可以在其中下载对 M2Eclipse 插件的 WTP 支持。在新的 m2e 中,我不需要安装任何额外的 WTP 支持。那么为什么不在 Eclipse 中导入一个 maven 项目,然后进行上述这些更改呢?
    • 好吧,我只是尝试在 Indigo 中为 Tomcat 创建一个全新的动态 Web 项目。如何添加 Maven 支持?只是添加 pom.xml 不会这样做
    • 正如我在上面的评论中所说,为什么不“导入现有的 Maven 项目”而不是创建一个动态 Web 项目?当您成功“mvn package”时,在 POM 中打包为战争,然后您可以继续服务器视图并像往常一样添加服务器。
    • 但我没有项目存在。我想从头开始
    【解决方案2】:

    Erik,导入现有的 maven 项目会让 m2e 发现并建议您安装 m2e-wtp,即 Maven Integration for Eclipse WTP 插件。由于您是从头开始,您应该自己安装 m2e-wtp(请参阅https://github.com/sonatype/m2eclipse-wtp/wiki)。

    现在为了快速启动一个新的 mavenized web 项目,您应该进入“New Project”菜单并选择新的 Maven 项目。 此时,您要么选择创建一个“简单”项目,在这种情况下,您需要在以下屏幕上选择“战争”打包,或者使用 maven 原型,它将快速启动一个新的预配置 Web 项目,具有风味你想要(jsf,spring ...)。 m2e-wtp wiki 提供了帮助您入门的链接。

    注意:此时 Eclipse 到 Maven 的转换几乎不存在(仅创建一个裸 pom.xml),这就是为什么我建议先创建一个 maven 项目。希望这在下一个 m2e 1.1(2012 年 6 月)中会变得更好

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-19
      • 2012-09-20
      • 2014-10-24
      • 2017-03-24
      • 1970-01-01
      • 2020-09-09
      • 2011-06-02
      • 1970-01-01
      相关资源
      最近更新 更多