2013-01-22 9 views
9

Ho un progetto babybird che ha 3 componenti persistence, business e serviceMaven: combinazione di più moduli jar in un unico file di guerra?

in s' pom.xmlbabybird Ho seguito

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

quando corro mvn clean install, vedo

[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] ------------------------------------------------------------------------ 

e ognuno di questi moduli genera un file jar.

Domanda: Come posso combinarli in uno babybird.war?
Sono nuovo di Maven e non sanno cosa cercare per eseguire questa operazione, si prega di fornire i puntatori

risposta

13

Questo è abbastanza semplice. Creare un altro modulo denominato web o simile:

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

web dovrebbe dipendere da tutti gli altri:

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

e hanno war imballaggio:

<packaging>war</packaging> 

Avrete anche bisogno web.xml in /src/main/webapp/WEB-INF . Questo è tutto.

+0

Questo è stato davvero utile, grazie @Tomasz – daydreamer

+1

condividi il codice per favore –

1
  1. Create a maven war module
  2. Specificare i 3 moduli che si desidera essere parte della guerra come dipendenze (altro di prova o fornito portata)
  3. pacchetto mvn run/installare sul modulo guerra

Done.

+1

Le domande di collegamento devono essere vietate su SO. – dit

Problemi correlati