[ https://issues.apache.org/jira/browse/FLINK-9222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16458986#comment-16458986 ]
ASF GitHub Bot commented on FLINK-9222: --------------------------------------- Github user NicoK commented on the issue: https://github.com/apache/flink/pull/5900 I'm pretty sure I got all this covered by using a separate "configuration": `myShadowJar` - not the standard dependency configuration*, but does the trick: Everything added to `myShadowJar` inside the `dependencies` gets added to the shaded jar (here: shadowJar), except for the explicit excludes which work with transitive dependencies as well (defined in the lines starting with `myShadowJar.exclude group:` where I included the same things as in the maven shade configuration of the quickstart). All user-code dependencies should be put into `myShadowJar` - maybe I should make this even more explicit in the gradle build file. - nothing is relocated - there's stuff packed into the jar and other stuff that isn't, that's it :) (should be the same - I did compare the jar with the one from maven with and without the kafka connector dependency as a test) - Flink core dependencies are excluded from the uber jar by not putting them into `myShadowJar` - with the trick of using `myShadowJar`, not only is IntelliJ able to run the job and the tests, it also runs from commandline * Unfortunately, I could not use the `shadow`/`compileOnly` dependency configurations which are standard for this in gradle because then the program would not run in IntelliJ or via `gradle run`. It would expect the environment to provide the dependencies which it does not there. Alternatives/fixes for this broke the transitive dependency exclusion which is, however, scheduled for some future version of the gradle shadow plugin. There a lot of enhancement requests in this regard, e.g. https://github.com/johnrengelman/shadow/issues/159 > Add a Gradle Quickstart > ----------------------- > > Key: FLINK-9222 > URL: https://issues.apache.org/jira/browse/FLINK-9222 > Project: Flink > Issue Type: Improvement > Components: Project Website, Quickstarts > Reporter: Nico Kruber > Assignee: Nico Kruber > Priority: Critical > > Having a proper project template helps a lot in getting dependencies right. > For example, setting the core dependencies to "provided", the connector / > library dependencies to "compile", etc. > The Maven quickstarts are in good shape by now, but there is none for Gradle > and Gradle users to get this wrong quite often. -- This message was sent by Atlassian JIRA (v7.6.3#76005)