Skip to content

Commit 0dc1381

Browse files
committed
Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree
DependencyTreeFactory now collects the project graph with the Maven Resolver conflict resolver in verbose mode and returns a NetBeans-owned DependencyNode, so the unmaintained maven-dependency-tree 2.2 jar and its friend packages go. Assisted-by: Claude Opus 5.5
1 parent dc89a11 commit 0dc1381

31 files changed

Lines changed: 585 additions & 305 deletions

‎java/maven.embedder/apichanges.xml‎

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,25 @@ is the proper place.
8383
<!-- ACTUAL CHANGES BEGIN HERE: -->
8484

8585
<changes>
86+
<change id="own-dependency-tree">
87+
<api name="general"/>
88+
<summary>Dependency tree no longer based on maven-dependency-tree</summary>
89+
<version major="2" minor="90"/>
90+
<date day="9" month="10" year="2026"/>
91+
<author login="slachiewicz"/>
92+
<compatibility binary="incompatible" source="incompatible" semantic="compatible" deprecation="no" addition="yes" modification="yes" deletion="yes"/>
93+
<description>
94+
<a href="@TOP@/org/netbeans/modules/maven/embedder/DependencyTreeFactory.html">DependencyTreeFactory</a>
95+
now builds the tree from Maven Resolver's verbose dependency graph and returns the new
96+
<code>org.netbeans.modules.maven.embedder.tree.DependencyNode</code>, which offers the subset of the
97+
former API that NetBeans used. The Maven Dependency Tree library is no longer bundled, and the
98+
<code>org.apache.maven.shared.dependency.*</code> packages are no longer exported to friends.
99+
Update imports to the new package; use the Maven Resolver API directly where the dependency graph is needed.
100+
</description>
101+
<class package="org.netbeans.modules.maven.embedder" name="DependencyTreeFactory"/>
102+
<class package="org.netbeans.modules.maven.embedder.tree" name="DependencyNode"/>
103+
<class package="org.netbeans.modules.maven.embedder.tree" name="DependencyNodeVisitor"/>
104+
</change>
86105
<change id="artifact-resolution">
87106
<api name="general"/>
88107
<summary>Multiple scopes allowed for dependency tree query</summary>

‎java/maven.embedder/external/binaries-list‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,4 @@
1515
# specific language governing permissions and limitations
1616
# under the License.
1717
DC15DFF8F701B227EE523EEB7A17F77C10EAFE2F org.jdom:jdom2:2.0.6.1
18-
5D9CE6ADD7B714B8095F0E3E396C5E9F8C5DCFEF org.apache.maven.shared:maven-dependency-tree:2.2
1918
18E39B277439D736A03AF4C067AC51C26BCF7A95 org.apache.maven:apache-maven:3.9.16:bin@zip

‎java/maven.embedder/external/maven-dependency-tree-2.2-license.txt‎

Lines changed: 0 additions & 208 deletions
This file was deleted.

‎java/maven.embedder/manifest.mf‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@ Manifest-Version: 1.0
22
OpenIDE-Module: org.netbeans.modules.maven.embedder/2
33
OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/maven/embedder/Bundle.properties
44
AutoUpdate-Show-In-Client: false
5-
OpenIDE-Module-Specification-Version: 2.89
5+
OpenIDE-Module-Specification-Version: 2.90

‎java/maven.embedder/nbproject/project.properties‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,11 @@ is.autoload=true
1919
javac.release=17
2020
javac.compilerargs=-Xlint -Xlint:-serial
2121
release.external/jdom2-2.0.6.1.jar=modules/ext/maven/jdom2-2.0.6.1.jar
22-
release.external/maven-dependency-tree-2.2.jar=modules/ext/maven/maven-dependency-tree-2.2.jar
2322
bundled.maven=apache-maven-3.9.16
2423
extra.module.files=maven/
2524
nbm.executable.files=maven/bin/mvn,maven/bin/mvnDebug,maven/bin/mvnyjp
2625
extra.license.files=${cluster}/maven/LICENSE.txt,${cluster}/maven/NOTICE.txt
27-
module.javadoc.packages=org.netbeans.modules.maven.embedder
26+
module.javadoc.packages=org.netbeans.modules.maven.embedder,org.netbeans.modules.maven.embedder.tree
2827
javadoc.apichanges=${basedir}/apichanges.xml
2928
javadoc.arch=${basedir}/arch.xml
3029
jnlp.indirect.files=modules/ext/maven/rootpackage/default-report.xml,modules/ext/maven/settings.xml

‎java/maven.embedder/nbproject/project.xml‎

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -225,11 +225,6 @@
225225
<package>org.apache.maven.settings.building</package>
226226
<package>org.apache.maven.settings.crypto</package>
227227
<package>org.apache.maven.settings.io.xpp3</package>
228-
<package>org.apache.maven.shared.dependency.tree</package>
229-
<package>org.apache.maven.shared.dependency.tree.traversal</package>
230-
<package>org.apache.maven.shared.dependency.graph</package>
231-
<package>org.apache.maven.shared.dependency.graph.filter</package>
232-
<package>org.apache.maven.shared.dependency.graph.traversal</package>
233228
<package>org.apache.maven.wagon</package>
234229
<package>org.apache.maven.wagon.authentication</package>
235230
<package>org.apache.maven.wagon.authorization</package>
@@ -264,6 +259,7 @@
264259
<package>org.jdom2.util</package>
265260
<package>org.netbeans.modules.maven.embedder</package>
266261
<package>org.netbeans.modules.maven.embedder.exec</package>
262+
<package>org.netbeans.modules.maven.embedder.tree</package>
267263
<!-- maven-resolver-api -->
268264
<package>org.eclipse.aether</package>
269265
<package>org.eclipse.aether.artifact</package>
@@ -309,12 +305,6 @@
309305
<package>org.apache.maven.wagon.shared.http</package>
310306
<package>org.apache.maven.wagon.providers.http.wagon.shared</package>
311307
</friend-packages>
312-
<!-- TODO: DROP THIS BEGIN-->
313-
<class-path-extension>
314-
<runtime-relative-path>ext/maven/maven-dependency-tree-2.2.jar</runtime-relative-path>
315-
<binary-origin>external/maven-dependency-tree-2.2.jar</binary-origin>
316-
</class-path-extension>
317-
<!-- TODO: DROP THIS END -->
318308
<class-path-extension>
319309
<runtime-relative-path>ext/maven/jdom2-2.0.6.1.jar</runtime-relative-path>
320310
<binary-origin>external/jdom2-2.0.6.1.jar</binary-origin>

0 commit comments

Comments
 (0)