2015-06-18 18 views
5

ho letto molto su progetti Maven multi-modulo e sono giunti alla conclusione che voglio utilizzare il seguente approccio:Maven nidificati - Secondo Livello Bambini

root 
    --pom.xml 
    --parent 
    --pom.xml 
    --module-a 
    --pom.xml 
    --module-b 
    --pom.xml 

vedere here

ma ora sono un po 'in difficoltà su come gestire i moduli di secondo/terzo/livello, ad es module-a ha anche più sotto-moduli, specialmente per le gerarchie profonde con un sacco di moduli.

vedo modulo A di nuovo come una radice quindi con conseguente la seguente struttura:

root 
    --pom.xml 
    --parent 
    --pom.xml 
    --module-a 
    --pom.xml 
    --parent-module-a 
     --pom.xml 
    --module-a-1 
     --pom.xml 
    --module-a-2 
     --pom.xml 
    --module-b 
    --pom.xml 

o se ho messo i sottomoduli del modulo-un fermo nella directory principale:

root 
    --pom.xml 
    --parent 
    --pom.xml 
    --module-a 
    --pom.xml 
    --module-b 
    --pom.xml 
    --module-a-1 
    --pom.xml 
    --module-a-2 
    --pom.xml 

Grazie per il vostro aiuto!

risposta

1

Sì, essere lì qualche tempo fa. Per essere onesti, dopo aver provato le cose, credo che sia davvero questione di gusti. Per me è molto più chiaro attaccare con root pom.xml come genitore e non fare il modulo dedicato per questo. È anche il default effettivo di Maven, dal momento che <relativePath> per genitore è .. inizialmente. Come vedi nel tuo caso, questo vantaggio è ancora più importante quando ridimensiona la struttura di Maven oltre un solo livello.

Posso immaginare un vantaggio di avere una sorta di logica basata su Maven all'interno di questo modulo genitore, come la definizione dell'assemblaggio o qualcosa del genere. Quindi fornisce una directory root per il layout di directory standard di Maven in cui puoi mettere le tue cose. Tuttavia, non ricordo davvero la situazione in cui avrei trovato utile, facendo Maven per molti anni, incluse codebase davvero grandi con centinaia di moduli.

+0

Sì, penso che tu abbia ragione. L'idea per un modulo genitore separato era di specificare le dipendenze, ecc. Al suo interno e di essere in grado di costruirlo/distribuirlo separatamente senza dover ricostruire i moduli figlio ogni volta. Ma sostanzialmente non ha senso, perché cambiando roba nel genitore si dovrebbe comunque ricostruire i bambini. – JDC

Problemi correlati