You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Michael Osipov (Jira)" <ji...@apache.org> on 2023/02/18 21:50:00 UTC
[jira] [Commented] (MNG-6972) Allow access to org.apache.maven.graph
[ https://issues.apache.org/jira/browse/MNG-6972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17690825#comment-17690825 ]
Michael Osipov commented on MNG-6972:
-------------------------------------
Fixed with [43dffb925f23d46d38bda3a7f6949679a9e0da3b|https://gitbox.apache.org/repos/asf?p=maven.git&a=commit&h=43dffb925f23d46d38bda3a7f6949679a9e0da3b] for {{maven-3.8.x}} branch.
> Allow access to org.apache.maven.graph
> --------------------------------------
>
> Key: MNG-6972
> URL: https://issues.apache.org/jira/browse/MNG-6972
> Project: Maven
> Issue Type: Improvement
> Components: Class Loading, Plugin API
> Affects Versions: 3.6.3
> Reporter: Michael Kroll
> Assignee: Michael Osipov
> Priority: Major
> Labels: easyfix, pull-request-available
> Fix For: 3.9.0, 4.0.0-alpha-2, 4.0.0, 3.8.8
>
>
> Hi
> maven doesn't export org.apache.maven.graph package in maven-core/src/main/resources/META-INF/maven/extension.xml so the GraphBuilder is not usable in extensions.
> {code:java}
> // leads to java.lang.NoClassDefFoundError: Lorg/apache/maven/graph/GraphBuilder;
> @Requirement( hint = GraphBuilder.HINT )
> private GraphBuilder graphBuilder;
> {code}
> Background: if one build extension adds dependencies and another build extension uses {{session.getProjectDependencyGraph()}}, then the dependency graph is out of date. This is because the graph is only rebuilt after executing _all_ extensions. One solution to this would be to update the {{MavenSession}} and setting the new dependency graph in the first extension, but for this we need access to the {{GraphBuilder}}.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)