[ https://issues.apache.org/jira/browse/HADOOP-8793?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13649641#comment-13649641 ]
Steven Yates commented on HADOOP-8793: -------------------------------------- Please see patch attached. Functionally version 1.0 of the Maven enforcer plugin does not currently support dependency convergence. This patch upgrades the enforcer plugin to version 1.2 and enforces convergence on unique versions i.e Snapshot timestamps should also be enforced. We need to be careful what we wish for, it didn't take long before particular libraries began to fail convergence Dependency convergence error for org.codehaus.plexus:plexus-utils:2.0.4 paths to dependency are: +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.apache.maven:maven-model:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.apache.maven:maven-artifact:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.sonatype.sisu:sisu-inject-plexus:1.4.2 +-org.codehaus.plexus:plexus-utils:2.0.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-settings:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-settings-builder:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-repository-metadata:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-model-builder:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.sonatype.plexus:plexus-sec-dispatcher:1.3 +-org.codehaus.plexus:plexus-utils:1.5.5 [WARNING] Dependency convergence error for org.codehaus.plexus:plexus-component-annotations:1.5.4 paths to dependency are: +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.sonatype.sisu:sisu-inject-plexus:1.4.2 +-org.codehaus.plexus:plexus-component-annotations:1.5.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-settings-builder:3.0 +-org.codehaus.plexus:plexus-component-annotations:1.5.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-model-builder:3.0 +-org.codehaus.plexus:plexus-component-annotations:1.5.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-aether-provider:3.0 +-org.codehaus.plexus:plexus-component-annotations:1.5.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.codehaus.plexus:plexus-component-annotations:1.5.5 [WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequireUpperBoundDeps failed with message: Failed while enforcing RequireUpperBoundDeps. The error(s) are [ Require upper bound dependencies error for org.codehaus.plexus:plexus-utils:2.0.4 paths to dependency are: +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.apache.maven:maven-model:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.apache.maven:maven-artifact:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.sonatype.sisu:sisu-inject-plexus:1.4.2 +-org.codehaus.plexus:plexus-utils:2.0.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-settings:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-settings-builder:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-repository-metadata:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-model-builder:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.sonatype.plexus:plexus-sec-dispatcher:1.3 +-org.codehaus.plexus:plexus-utils:1.5.5 ] [WARNING] Rule 1: org.apache.maven.plugins.enforcer.DependencyConvergence failed with message: Failed while enforcing releasability the error(s) are [ Dependency convergence error for org.codehaus.plexus:plexus-utils:2.0.4 paths to dependency are: +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.apache.maven:maven-model:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.apache.maven:maven-artifact:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.sonatype.sisu:sisu-inject-plexus:1.4.2 +-org.codehaus.plexus:plexus-utils:2.0.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-settings:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-settings-builder:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-repository-metadata:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-model-builder:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.codehaus.plexus:plexus-utils:2.0.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.sonatype.plexus:plexus-sec-dispatcher:1.3 +-org.codehaus.plexus:plexus-utils:1.5.5 , Dependency convergence error for org.codehaus.plexus:plexus-component-annotations:1.5.4 paths to dependency are: +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-plugin-api:3.0 +-org.sonatype.sisu:sisu-inject-plexus:1.4.2 +-org.codehaus.plexus:plexus-component-annotations:1.5.4 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-settings-builder:3.0 +-org.codehaus.plexus:plexus-component-annotations:1.5.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-model-builder:3.0 +-org.codehaus.plexus:plexus-component-annotations:1.5.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.apache.maven:maven-aether-provider:3.0 +-org.codehaus.plexus:plexus-component-annotations:1.5.5 and +-org.apache.hadoop:hadoop-maven-plugins:3.0.0-SNAPSHOT +-org.apache.maven:maven-core:3.0 +-org.codehaus.plexus:plexus-component-annotations:1.5.5 -S > hadoop-core has dependencies on two different versions of commons-httpclient > ---------------------------------------------------------------------------- > > Key: HADOOP-8793 > URL: https://issues.apache.org/jira/browse/HADOOP-8793 > Project: Hadoop Common > Issue Type: Bug > Components: build > Affects Versions: 0.20.205.0 > Environment: Seen on 0.20.205.0, but may be an issue for other > versions of hadoop-core (and probably other hadoop builds) > Reporter: Christopher Tubbs > Priority: Critical > Labels: convergence, dependency, hadoop, httpclient, maven > > hadoop-core fails to enforce dependency convergence, resulting in potential > conflicts. > At the very least, there appears to be a direct dependency on > {code}commons-httpclient:commons-httpclient:3.0.1{code} > but a transitive dependency on > {code}commons-httpclient:commons-httpclient:3.1{code} > via > {code}net.java.dev.jets3t:jets3t:0.7.1{code} > See > http://maven.apache.org/enforcer/enforcer-rules/dependencyConvergence.html > for details on how to enforce dependency convergence in Maven. > Please enforce dependency convergence... it helps projects that depend on > hadoop libraries build much more reliably and safely. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira