2012-04-21 31 views
5

Trong một Maven 2 mojo bạn có thể sử dụng một cái gì đó như thế này để có được những cây phụ thuộc:Làm thế nào để có được cây phụ thuộc trong một plugin 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(); 

gì là Maven 3 tương đương? Nhiều lớp học có liên quan đã không được chấp nhận trong thời gian chờ đợi (ArtifactCollector, ArtifactMetadataSource, v.v.).

Trả lời

1

Maven 3 sử dụng Aether cho độ phân giải phụ thuộc. Gần cuối tài liệu là một liên kết khác để sử dụng Aether trong các plugin Maven.

+0

Phải cung cấp tín dụng (tức là đánh dấu đây là câu trả lời) cho con trỏ đến Aether mặc dù tôi thực sự thích lib của yegor256 jcabi-aether –

-2

mvn phụ thuộc: sao chép phụ thuộc -DoutputDirectory =

+0

Tôi đã yêu cầu mã để triển khai trong mojo. –

2

Bạn cần sử dụng Aether (đây là những gì Maven 3 đang sử dụng). Tôi muốn khuyên bạn nên sử dụng một wrapper đơn giản xung quanh nó, được gọi là jcabi-aether (Tôi là một nhà phát triển của nó).

+0

Xin lỗi nhưng user944849 đã nhanh hơn trỏ đến Aether. Tuy nhiên, bạn đã thăng hạng. –

Các vấn đề liên quan