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
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.
---