2011-09-13 27 views
11

Estoy buscando una manera rápida, para cualquier proyecto dado de varios módulos, de mostrar una descripción general rápida de la jerarquía del proyecto, incluyendo solo los módulos del proyecto, excluyendo las dependencias externas.Crear un árbol de módulo de proyecto maven?

por ejemplo, para un proyecto

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

Me gustaría ver una vista rápida, única pantalla de AH (como se representa aquí) que me da una visión de digerir rápido para tener una idea de una estructura de proyecto . Idealmente sería una salida de línea de comando, no una solución específica de plataforma (noto que hay una herramienta para VisualStudio).

mvn dependency:tree es grande pero demasiado prolijo para este caso, supongo que podría grep y cut la salida separados, pero siente que debe haber una manera más fácil (es decir, otro plugin).

Respuesta

16

Puede filtrar el árbol de dependencias: http://maven.apache.org/plugins/maven-dependency-plugin/examples/filtering-the-dependency-tree.html

tanto, si su ID de grupo era com.foo.bar, usted podría conseguir los proyectos en que los ID de grupo con:

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

Suponiendo que todos los módulos de su proyecto son dentro de ese grupo, eso cubriría su caso de uso.

+0

Niza, gracias a Brett. – markdsievers

+0

Para mí mvn dependency: tree no funciona como se supone. Si tengo A que depende de B y C, y B depende de C, la dependencia de maven: tree me muestra que A depende de B y C, pero nada sobre B según C. – Uberto

+1

@Uberto try mvn dependency: tree - Dverbose – David

1

Puede probar este módulo aquí: MavenStructurePlugin Tuve el mismo problema que usted y lo encontré bastante útil.

La salida es más o menos lo que parece querer:

  test 
      | 
      |__ a 
      | 
      |__ b 
      | 
      | 
      \__ c 
       | 
       |__ d 
       | 
       |__ e 
       | 
       |__ f 
Cuestiones relacionadas