2012-04-21 24 views
5

En un 2 mojo Maven se puede usar algo como esto para obtener el árbol de dependencias:¿Cómo obtener el árbol de dependencias en un plugin de Maven 3?

DependencyNode rootNode; 
try { 
    rootNode = treeBuilder.buildDependencyTree(project, localRepository, 
     artifactFactory, artifactMetadataSource, null, artifactCollector); 
} catch (DependencyTreeBuilderException e) { 
    throw new MojoExecutionException("Failed to create dependency tree.", e); 
} 
final CollectingDependencyNodeVisitor visitor = new CollectingDependencyNodeVisitor(); 
rootNode.accept(visitor); 
final List<DependencyNode> nodes = visitor.getNodes(); 

¿Qué es el equivalente Maven 3? Muchas clases involucradas se han vuelto obsoletas mientras tanto (ArtifactCollector, ArtifactMetadataSource, etc.).

Respuesta

1

Maven 3 utiliza Aether para la resolución de la dependencia. Cerca de la parte inferior de los documentos hay otro enlace para usar Aether en los plugins de Maven.

+0

Tengo que dar crédito (es decir, marcar esto como respuesta) para el puntero a Aether aunque realmente me gusta la lib de jgobi-aether de yegor256 –

-2

MVN dependencia: copia dependencias -DoutputDirectory =

+0

Estaba pidiendo el código para implementar en un mojo. –

2

Necesita usar Aether (esto es lo que utiliza Maven 3). Recomiendo usar un envoltorio simple alrededor, llamado jcabi-aether (soy un desarrollador de él).

+0

Lo siento pero el usuario 944849 fue más rápido al señalar a Aether. Tu votaste a favor, sin embargo. –

Cuestiones relacionadas