2011-09-13 16 views
11

Sto cercando un modo rapido, per qualsiasi progetto multi-modulo, per mostrare una rapida panoramica della gerarchia del progetto inclusi solo i moduli nel progetto, escluse le dipendenze esterne.Creare un albero di moduli progetto maven?

ad esempio per un progetto

project root 
+- A 
    +- B 
     +- C 
    +- D 
     +- E 
     +- F 
+- G 
    +- H 

desidero vedere una visualizzazione di schermata singola pratica per AH (come è illustrato qui) che mi dà una vista digeribile veloce per avere un'idea di una struttura di progetto . Idealmente sarebbe un output da riga di comando, non una soluzione specifica per la piattaforma (noto che c'è uno strumento per VisualStudio).

mvn dependency:tree è ottimo ma troppo dettagliato per questo caso, suppongo che potrei grep e cut l'output a parte ma sembra che ci dovrebbe essere un modo più semplice (vale a dire un altro plug-in).

risposta

16

È possibile filtrare l'albero delle dipendenze: http://maven.apache.org/plugins/maven-dependency-plugin/examples/filtering-the-dependency-tree.html

Quindi, se il vostro gruppo ID era com.foo.bar, si potrebbe ottenere i progetti che ID di gruppo con:

mvn dependency:tree -Dincludes=com.foo.bar 

Supponendo che tutti i moduli del progetto sono all'interno di quel gruppo, che coprirebbe il tuo caso d'uso.

+0

Nizza, grazie Brett. – markdsievers

+0

Per me dipendenza mvn: l'albero non funziona come supposto. Se ho A che dipende da B e C, e B che dipende da C, dipendenza da maven: l'albero mi mostra che A dipende da B e C, ma nulla di B dipende da C. – Uberto

+1

@Uberto prova la dipendenza da mvn: albero - Dverbose – David

1

Si potrebbe provare questo modulo qui: MavenStructurePlugin Ho avuto lo stesso problema come hai fatto e trovato abbastanza utile.

L'uscita è più o meno quello che ti sembra di volere:

  test 
      | 
      |__ a 
      | 
      |__ b 
      | 
      | 
      \__ c 
       | 
       |__ d 
       | 
       |__ e 
       | 
       |__ f 
Problemi correlati