maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Osipov (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (MNG-5980) DependencyGraphBuilder gives different results depending on the order of dependencies in the pom
Date Wed, 17 Feb 2016 23:17:18 GMT

    [ https://issues.apache.org/jira/browse/MNG-5980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15151392#comment-15151392
] 

Michael Osipov commented on MNG-5980:
-------------------------------------

I have observed this recently too while fixing a component. It does not apply a nearest-leaf-in-tree
logic.

> DependencyGraphBuilder gives different results depending on the order of dependencies
in the pom
> ------------------------------------------------------------------------------------------------
>
>                 Key: MNG-5980
>                 URL: https://issues.apache.org/jira/browse/MNG-5980
>             Project: Maven
>          Issue Type: Bug
>          Components: Dependencies, Plugin API
>         Environment: Kubuntu 14.10
> Java 8
> Maven 3.0.5/3.3.9
> maven-dependency-tree 2.1/3.0
>            Reporter: Gerrit Daniels
>         Attachments: dependency-graph-builder-bug.zip
>
>
> I'm getting different results when using DependencyGraphBuilder in a plugin depending
on the order in which the dependencies are defined in the pom of the project the plugin is
running on. I have created some test projects to reproduce the bug.
> - actual-dependency: This is the dependency that moves when changing the order in the
pom.
> - test-dependency: Depends on the actual-dependency with compile scope.
> - compile-dependency: Also depends on the actual-dependency with compile scope.
> - main-project: Depends on the test-dependency with test scope and on the compile-dependency
with compile scope. Has the plugin configured.
> - plugin: Builds the dependency graph.
> When running maven with the -X switch on the main project with the test-dependency declared
first in the pom I get the following dependency graph:
> {code}
> [DEBUG] com.qmino:main-project:jar:1.0-SNAPSHOT
> [DEBUG]    com.qmino:test-dependency:jar:1.0-SNAPSHOT:test
> [DEBUG]       com.qmino:actual-dependency:jar:1.0-SNAPSHOT:compile
> [DEBUG]    com.qmino:compile-dependency:jar:1.0-SNAPSHOT:compile
> {code}
> When I change the order of the dependencies I get:
> {code}
> [DEBUG] com.qmino:main-project:jar:1.0-SNAPSHOT
> [DEBUG]    com.qmino:compile-dependency:jar:1.0-SNAPSHOT:compile
> [DEBUG]       com.qmino:actual-dependency:jar:1.0-SNAPSHOT:compile
> [DEBUG]    com.qmino:test-dependency:jar:1.0-SNAPSHOT:test
> {code}
> It seems to me that the order of the dependencies shouldn't change the results. In both
cases I would expect the second output, since the compile scope should overrule the test scope.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message