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

Paul Vonnahme commented on MENFORCER-195:
-----------------------------------------

It looks like the comment in 
https://issues.apache.org/jira/browse/MSHARED-339?focusedCommentId=16817496&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16817496
 would work to fix the issue.  However, it requires adopting the 
{noformat}
    DependencyNode buildDependencyGraph( ProjectBuildingRequest 
buildingRequest, ArtifactFilter filter )
        throws DependencyGraphBuilderException;
{noformat}
method signature.  The current version of maven-dependency-tree that the 
enforcer uses has
{noformat}
    DependencyNode buildDependencyGraph(MavenProject var1, ArtifactFilter var2) 
throws DependencyGraphBuilderException;
{noformat}
I don't think that is a problem assuming the enforcer plugin is willing to 
update that dependency. Ideally this could be included in the final 3.0.0 
version of the enforcer.

I started on the changes and hoped to open a PR, but fixing 
DependencyConvergence breaks RequireUpperBoundDeps - a rule I'm not all that 
familiar with.  It seems DependencyNode.getPremanagedVersion() is null, while 
with DependencyTreeBuilder it had a value. After more research, it seems this 
isn't implemented, and MSHARED-816 needs done for that to work.

To recap:
# To fix the dependency convergence rule (this ticket), the 
maven-dependency-tree dependency needs updated
# Once the maven-dependency-tree dependency is updated, all rules that used 
dependencies need changed since DependencyTreeBuilder does not exist in the new 
version
# Once everything is converted to DependencyGraphBuilder, 
"RequireUpperBoundDeps" starts failing since it requires MSHARED-816


> Dependency convergence does not support wildcard exclusions
> -----------------------------------------------------------
>
>                 Key: MENFORCER-195
>                 URL: https://issues.apache.org/jira/browse/MENFORCER-195
>             Project: Maven Enforcer Plugin
>          Issue Type: Bug
>          Components: Plugin
>    Affects Versions: 1.3.1
>         Environment: Maven 3.2.1
>            Reporter: Tomaz Cerar
>            Priority: Major
>
> Maven 3.2 introduced wildcard exclusions for dependencies.
> But if you use them dependencyConvergence wrongly complains about conflicting 
> transitive dependencies.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to