// mode verbose OFF : do not show the same lib many times
DependencyNodeFilter filter = StateDependencyNodeFilter.INCLUDED;
CollectingDependencyNodeVisitor collectingVisitor = new CollectingDependencyNodeVisitor();
DependencyNodeVisitor firstPassVisitor = new FilteringDependencyNodeVisitor(collectingVisitor, filter);
root.accept(firstPassVisitor);
DependencyNodeFilter secondPassFilter = new AncestorOrSelfDependencyNodeFilter(collectingVisitor.getNodes());
visitor = new FilteringDependencyNodeVisitor(visitor, secondPassFilter);
root.accept(visitor);
} catch (DependencyTreeBuilderException e) {
throw new SonarException("Can not load the graph of dependencies of the project " + project.getKey(), e);