2012-07-24 97 views
1

我最近嘗試過使用NetBeans,但我不明白它如何處理maven multimodule項目。運行multimodule的Netbeans maven項目

我的項目有相當複雜的模塊結構,當我們正在處理它時(我們主要使用IntelliJ社區版),我們不想打開所有模塊(約50個模塊),因爲它需要幾個小時來加載項目,而是我們創建了一個「工作空間」模塊:一個包含pom.xml的文件夾,其中包含一個打包類型pom並定義了我想要加載的模塊。

可以說,它定義模塊A,B,C

我們在模塊A這是一個低級別的基礎設施模塊我們的「主」方法(我們不使用任何類型的容器)。 作爲一個運行時依賴項,我們需要A,B,C。但是A並不真正依賴於B,C,而是B和C依賴於A(依據Maven依賴關係)。

所以我們創建了另一個模塊,我們稱它爲runner,我們定義所有的依賴關係。我們的工作空間pom.xml有runner的模塊聲明,所以爲了從intelliJ運行項目,我們在模塊A中運行main方法時使用'module runner'classpath。

現在,我該如何實現影響最新的Netbeans(7.1.2)?

我明白,這個問題是一種新手的風格,但我很難與它鬥爭,沒有運氣 因此,任何幫助將在這裏讚賞。謝謝:)

+1

如果maven可以運行Pom.xml,你應該可以在Netbeans中打開pom.xml。試過嗎? – 2012-07-24 06:23:09

+0

是的,當然,它會打開它。我可以構建我的模塊,但是我可以從netbeans運行我的主類,這樣我就可以獲取其他模塊的類路徑。相反,當我右鍵單擊main方法並運行它時,會產生java exec插件,我不知道在哪裏編譯它。我只是不想在我的pom中爲此配置java exec插件。總而言之,它看起來像NetBeans直接使用maven,並不像IntelliJ那樣創建IDE特定層。 – 2012-07-24 06:45:51

+0

那麼,它的工作與否? – 2012-07-24 10:59:38

回答

1

只是在同樣的問題掙扎 - 從Netbeans wiki中列出的東西看來,每個模塊都代表了它自己的Netbeans項目,其他所有項目都會用項目依賴關係來表達。請參閱http://wiki.netbeans.org/MavenBestPractices

帶模塊的項目稱爲多模塊或聚合器項目。模塊是POM列出的項目,並作爲一個組執行。 NetBeans中的Maven項目將這些模塊列爲「必需的項目」。因此,您只能通過包含已定義模塊的「pom」包裝爲Maven項目獲取所需的項目列表。

相關問題