GitHub user tillrohrmann opened a pull request:

    https://github.com/apache/flink/pull/1682

    [FLINK-3459] [build] Fix conflicting dependencies commons-collections 
commons-beanutils and commons-beanutils-core

    The Hadoop dependencies have a dependency on commons-configuration which 
pulls in transitively the commons-collection, commons-beanutils and 
common-beanutils-core depedencies. Commons-beanutils and commons-collection 
contain classes which live in the same namespace. They are also binary 
compatible but not binary identical. This is a problem for the sbt assembly 
plugin which checks for binary identity. In order to solve the problem, we bump 
the commons-configuration version to 1.7 so that only commons-beanutils is 
pulled in. This is necessary, because the transitive promotion of dependencies 
of the shade plugin only excludes the commons-beanutils dependency only from 
the directly depending dependency. All parent dependencies won't have the 
exclusion. This is a problem for SBT which will pull the dependency as part of 
one of the parents, then. Moreover, we replace commons-beanutils by 
commons-beanutils-bean-collections which contains only the non-conflicting 
classes wrt commons-col
 lections.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/tillrohrmann/flink makeSbtCompatible

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/1682.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1682
    
----
commit 872a5cc8b40142feb6313549e1ed2b2029ce4d68
Author: Till Rohrmann <trohrm...@apache.org>
Date:   2016-02-17T14:41:43Z

    [FLINK-3459] [build] Fix conflicting dependencies commons-collections, 
commons-beanutils and commons-beanutils-core
    
    The Hadoop dependencies have a dependency on commons-configuration which 
pulls in transitively the commons-collection, commons-beanutils and 
common-beanutils-core depedencies. Commons-beanutils and commons-collection 
contain classes which live in the same namespace. They are also binary 
compatible but not binary identical. This is a problem for the sbt assembly 
plugin which checks for binary identity. In order to solve the problem, we bump 
the commons-configuration version to 1.7 so that only commons-beanutils is 
pulled in. This is necessary, because the transitive promotion of dependencies 
of the shade plugin only excludes the commons-beanutils dependency only from 
the directly depending dependency. All parent dependencies won't have the 
exclusion. This is a problem for SBT which will pull the dependency as part of 
one of the parents, then. Moreover, we replace commons-beanutils by 
commons-beanutils-bean-collections which contains only the non-conflicting 
classes wrt commons-col
 lections.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to