2013-01-08 26 views
1

我在Eclipse中創建我的第一個層次多模塊項目Maven的多模塊項目工作:在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相同的級別創建一個「父」文件夾,並在其中創建父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。

+0

哪個版本的Eclipse? m2e安裝?安裝了 – khmarbaise

+0

m2e,是的。我有朱諾。 – Lolo

回答

0

我想我在這裏回答我自己的問題。

  • 我檢出了Eclipse以外的項目。
  • 然後我導入爲Maven項目

我正是我所期望的觀點:即4個文件夾在我的工作區(一個家長和3對每個孩子的)。不知何故,我記得有一個選擇可以用我以前版本的Eclipse一步完成這一步(即檢出和導入)。它被稱爲「簽出maven項目」,它似乎已經隨着Juno的消失。或者也許我錯過了正確的插件(我安裝了m2e以及Subversive;可能是另一個svn插件會這樣做而不是顛覆性的)。