Open up and make accessible Resolver Public APIs
As documented here: https://maven.apache.org/resolver/api-compatibility.html
Doing this is not only "right", but makes possible migration off the legacy classes, like shared.graph, shared.tree and many others are.
After migration, the list of friend classes should be narrowed down by dropping unused stuff.
Deprecated stuff like api.transform or spi.servicelocator and others intentionally left out, they are not needed (and are deprecated anyway).
ag -l -E java DependencyTreeFactory
java/maven/src/org/netbeans/modules/maven/queries/MavenDependenciesImplementation.java
java/maven/src/org/netbeans/modules/maven/nodes/DependencyNode.java
java/maven/src/org/netbeans/modules/maven/dependencies/ExcludeDependencyPanel.java
java/maven.embedder/src/org/netbeans/modules/maven/embedder/DependencyTreeFactory.java
java/maven.repository/src/org/netbeans/modules/maven/repository/ui/ArtifactMultiViewFactory.java
the dated dep isn't used a lot luckily. we might be able to migrate this in one go - or at least some of it.
Yes, but things like ArtifactRepository (also deprecated in 3.9.x) have way bigger proliferation, and stands in way to support things like "split repository"... so there is quite some things to clean up.
@cstamas could you squash and rebase this to latest master (no hurry). NB 25 is baking right now, I think we should try to get this in for NB 26.
@cstamas congratulations on your first NetBeans contribution! :D