2013-01-22 92 views
9

我有一個項目babybird其中有3個組成部分persistence,在businessserviceMaven:將多個模塊罐組合成一個戰爭文件?

babybirdpom.xml我有以下

<modules> 
     <module>persistence</module> 
     <module>business</module> 
     <module>service</module> 
    </modules> 

當我運行mvn clean install,我看到

[INFO] ------------------------------------------------------------------------ 
[INFO] Reactor Summary: 
[INFO] 
[INFO] babybird ......................................... SUCCESS [2.801s] 
[INFO] persistence ....................................... SUCCESS [3.321s] 
[INFO] business .......................................... SUCCESS [0.832s] 
[INFO] service ........................................... SUCCESS [0.694s] 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 8.168s 
[INFO] Finished at: Tue Jan 22 12:09:48 PST 2013 
[INFO] Final Memory: 18M/50M 
[INFO] ------------------------------------------------------------------------ 

和這些模塊中的每一個都會生成一個jar文件。

問題:如何將它們合併爲一個babybird.war
我是新來Maven和不知道要尋找什麼來完成這個任務,請提供指針

回答

13

這很簡單。創建另一個模塊命名web或類似:

<modules> 
    <module>persistence</module> 
    <module>business</module> 
    <module>service</module> 
    <module>web</module> 
</modules> 

web模塊應取決於所有其他:

<dependencies> 
    <dependency> 
     <groupId>...</groupId> 
     <artifactId>persistence</artifactId> 
    </dependency> 
    ... 
</dependencies> 

,並有war包裝:

<packaging>war</packaging> 

您還需要web.xml/src/main/webapp/WEB-INF 。而已。

+0

這真的很有用,謝謝@Tomasz – daydreamer

+1

分享代碼請 –

1
  1. Create a maven war module
  2. 指定你想成爲戰爭作爲依賴的一部分,3個模塊(其它比測試或提供範圍)
  3. 運行MVN包/安裝戰爭模塊

DONE上。

+1

鏈接問題應該禁止在SO上。 – dit

相關問題