首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获得Maven项目的直接(非传递)依赖项?

如何获得Maven项目的直接(非传递)依赖项?
EN

Stack Overflow用户
提问于 2022-10-11 06:50:30
回答 1查看 29关注 0票数 0

目前,在处理MavenProject时,我使用getDependencyArtifacts获取直接(非传递)依赖项。但是,此方法被标记为不推荐使用。那么,我该用什么代替呢?我看到了方法getDependencies,但是它获取传递依赖项,我看不到任何方法来过滤直接依赖项。

我是否应该使用RepositorySystem及其方法collectDependencies,并导航生成的图,并只获取根的子元素,我猜这实际上是直接依赖关系吗?难道我没有更直接、不反对的方法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-11 08:15:07

这是基于快速搜索,有一个现有的API称为乙醚。它的文档不是很好。

它中的方法名为:getDependencies(),它根据javadoc检索直接依赖项。

https://maven.apache.org/resolver/maven-resolver-api/apidocs/org/eclipse/aether/resolution/ArtifactDescriptorResult.html

在github上有一个例子:

代码语言:javascript
运行
复制
public class GetDirectDependencies
{

    public static void main( String[] args )
        throws Exception
    {
        System.out.println( "------------------------------------------------------------" );
        System.out.println( GetDirectDependencies.class.getSimpleName() );

        RepositorySystem system = Booter.newRepositorySystem();

        RepositorySystemSession session = Booter.newRepositorySystemSession( system );

        Artifact artifact = new DefaultArtifact( "org.eclipse.aether:aether-impl:1.0.0.v20140518" );

        ArtifactDescriptorRequest descriptorRequest = new ArtifactDescriptorRequest();
        descriptorRequest.setArtifact( artifact );
        descriptorRequest.setRepositories( Booter.newRepositories( system, session ) );

        ArtifactDescriptorResult descriptorResult = system.readArtifactDescriptor( session, descriptorRequest );

        for ( Dependency dependency : descriptorResult.getDependencies() )
        {
            System.out.println( dependency );
        }
    }

}

https://github.com/1984shekhar/fuse-examples-6.2/blob/master/aether-demo-snippets/src/main/java/org/eclipse/aether/examples/GetDirectDependencies.java

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74024068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档