在 Maven 2 mojo 中,您可以使用类似这样的方法来获取依赖树:
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();
Maven 3 的等价物是什么?在此期间,许多涉及的类已被弃用(ArtifactCollector
、ArtifactMetadataSource
等)。
最佳答案
您需要使用 Aether (这是 Maven 3 正在使用的)。我建议在它周围使用一个简单的包装器,称为 jcabi-aether (我是它的开发者)。
关于java - 如何在 Maven 3 插件中获取依赖树?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10263033/