Github user alpinegizmo commented on a diff in the pull request:

    https://github.com/apache/flink/pull/3300#discussion_r101038332
  
    --- Diff: docs/dev/best_practices.md ---
    @@ -310,3 +310,17 @@ Next, you need to put the following jar files into the 
`lib/` folder:
     Note that you need to explicitly set the `lib/` directory when using a per 
job YARN cluster.
     
     The command to submit Flink on YARN with a custom logger is: `./bin/flink 
run -yt $FLINK_HOME/lib <... remaining arguments ...>`
    +
    +
    +## Resolving Dependency Conflicts with Flink using the maven-shade-plugin.
    +
    +Apache Flink loads many classes by default into its classpath (the 
[classloading is described here in 
detail]({{site.baseurl}}/monitoring/debugging_classloading.html)). If a user 
uses a different version of a library that Flink is using, often 
`IllegalAccessExceptions` or `NoSuchMethodError` are the result.
    +
    +Through Hadoop, Flink for example depends on the `aws-sdk` library or on 
`protobuf-java`. If your user code is using these libraries and you run into 
issues we recommend relocating the dependency in your user code jar.
    +
    +Apache Maven offers the 
[maven-shade-plugin](https://maven.apache.org/plugins/maven-shade-plugin/), 
that allows to change the package of a class *after* compiling it (so the code 
you are writing is not affected by the shading). For example if you have the 
`com.amazonaws` packages from the aws sdk in your user code jar, the shade 
plugin would relocate them into the `org.myorg.shaded.com.amazonaws` package, 
so that your code is calling your aws sdk version.
    --- End diff --
    
    I suggest a minor rewording:
    
    Apache Maven offers the 
[maven-shade-plugin](https://maven.apache.org/plugins/maven-shade-plugin/), 
which allows one to change the package of a class *after* compiling it ...


---
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 [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to