在Eclipse中处理maven多模块项目

时间:2013-01-08 18:15:44

标签: eclipse maven module project m2e

我正在Eclipse中创建我的第一个分层多模块项目:

 /project
    pom.xml
      (...)
      <groupId>a.b.c</groupId>
      <artifactId>myProject</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>pom</packaging>
      <modules>
        <module>x</module>
        <module>y</module>
      </modules>
    /x
      pom.xml
        (...)
        <parent>
          <artifactId>myProject</artifactId>
          <groupId>a.b.c</groupId>
          <version>1.0-SNAPSHOT</version>
        </parent>    
      /src
      .project
    /y
      pom.xml
        (...)
        <parent>
          <artifactId>myProject</artifactId>
          <groupId>a.b.c</groupId>
          <version>1.0-SNAPSHOT</version>
        </parent>    
      /src
      .project

理想情况下,我想在Eclipse工作区中看到三个文件夹:

  /project
    pom.xml
  /x
    pom.xml
    src
    .project
  /y
    pom.xml
    src
    .project
  • x和y会在项目文件夹中找到父pom.xml。我可以作为maven项目独立完成它们。

  • 项目只包含父pom.xml

至少那是我对如何处理这个项目的直觉。

我在SVN中提交了我的代码,我可以通过使用选项“在所选资源的子项中查找项目”进行SVN检出来接近该结构(只要父项目中没有.project就可用)夹)。这会在我的工作区中创建项目x和y,但由于缺少父pom.xml,我得到编译错误。我可以通过将父pom.xml放在工作区中来摆脱这些错误,但这似乎不是一个干净的解决方案。

我认为我的问题的一个解决方案是将我的结构展平一些并在与x和y相同的级别创建一个'parent'文件夹,并在那里创建我的父pom.xml和.project文件,但似乎奇怪的是必须把父母放在与孩子相同的水平,只是为了让Eclipse开心。最接近我在网上找到的答案是http://warpedjavaguy.wordpress.com/2011/08/08/how-i-defeated-the-maven-release-plugin-in-a-flat-structured-multi-module-project/,它似乎以类似的方式解决问题。

我缺少一种更好的方法吗?

PS:我有m2e。

1 个答案:

答案 0 :(得分:0)

我想我在这里回答了我自己的问题。

  • 我在Eclipse之外检查了这个项目。
  • 然后我作为maven项目导入

我得到了我期望的视图:即我工作区中的4个文件夹(一个用于父级,3个用于每个子级)。不知何故,我记得有一个选项可以用我之前版本的Eclipse一步完成这一步骤(即结账和导入)。它被称为“作为maven项目检查”,它似乎已经与Juno一起消失了。或许我错过了正确的插件(我安装了m2e以及Subversive;它可能是另一个svn插件而不是颠覆性的。)

相关问题