Repository: flink Updated Branches: refs/heads/master e45096867 -> a42eafb40
[FLINK-5123] [docs] Add description how to build a properly shaded build with different Maven versions Project: http://git-wip-us.apache.org/repos/asf/flink/repo Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/a42eafb4 Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/a42eafb4 Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/a42eafb4 Branch: refs/heads/master Commit: a42eafb40e1724efb7f7e680c32b86b4a66589cc Parents: e450968 Author: Stephan Ewen <[email protected]> Authored: Tue Nov 22 12:49:08 2016 +0100 Committer: Stephan Ewen <[email protected]> Committed: Tue Nov 22 12:49:08 2016 +0100 ---------------------------------------------------------------------- docs/setup/building.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flink/blob/a42eafb4/docs/setup/building.md ---------------------------------------------------------------------- diff --git a/docs/setup/building.md b/docs/setup/building.md index ef1f3f1..c6ef5df 100644 --- a/docs/setup/building.md +++ b/docs/setup/building.md @@ -52,6 +52,26 @@ This instructs [Maven](http://maven.apache.org) (`mvn`) to first remove all exis The default build includes the YARN Client for Hadoop 2. +## Dependency Shading + +Flink [shades away](https://maven.apache.org/plugins/maven-shade-plugin/) some of the libraries it uses, in order to avoid version clashes with user programs that use different versions of these libraries. Among the shaded libraries are *Google Guava*, *Asm*, *Apache Curator*, *Apache HTTP Components*, and others. + +The dependency shading mechanism was recently changed in Maven and requires users to build Flink slightly differently, depending on their Maven version: + +**Maven 3.0.x, 3.1.x, and 3.2.x** +It is sufficient to call `mvn clean install -DskipTests` in the root directory of Flink code base. + +**Maven 3.3.x** +The build has to be done in two steps: First in the base directory, then in the distribution project: + +~~~bash +mvn clean install -DskipTests +cd flink-dist +mvn clean install +~~~ + +*Note:* To check your Maven version, run `mvn --version`. + {% top %} ## Hadoop Versions
