に似たものを作りたいmvn dependency:tree
。依存関係にexclusions
タグがある場合、その推移的な依存関係は解決された結果に表示されません。
ただし、このライブラリのすべての推移的な依存関係を除外することを期待して、依存関係に除外を追加するデモの例に似たものを作成しようとしましたが、それでも完全なツリーが出力されます。
RepositorySystem system = Booter.newRepositorySystem(Booter.selectFactory(args));
RepositorySystemSession session = Booter.newRepositorySystemSession(system);
Artifact artifact1 = new DefaultArtifact("com.google.oauth-client:google-oauth-client:1.31.5");
Exclusion exclusion = new Exclusion("*", "*", null, null);
CollectRequest collectRequest = new CollectRequest();
collectRequest.setRepositories(Booter.newRepositories(system, session));
collectRequest.setDependencies(List.of(new Dependency(artifact1, "", false, Set.of(exclusion))));
CollectResult collectResult = system.collectDependencies(session, collectRequest);
collectResult.getRoot().accept(new ConsoleDependencyGraphDumper());