Hey all,

looking at the quickstarts for the upcoming release, I am a little confused:

We use the shade plugin to build a fat jar and exclude some of Flink's 
dependencies (actual and transitive). Then we have a build profile (build-jar), 
which sets the Flink dependencies to provided.

1. Is there a difference between these two approaches? @Robert and Stephan: can 
you comment on this please? I would like to fix this for the release. The 
current quickstart pom looks somewhat unclean.

From my understanding both approaches are equivalent and actually the 
"provided" variant w/o cumbersome shade plugin exclusion configuration should 
be preferred, e.g.

<dependency>
   <groupId>org.apache.flink</groupId>
   <artifactId>flink-java</artifactId>
   <version>0.9.0</version>
   <scope>provided</scope>
</dependency>

... (other Flink deps for the quickstart)

+ simple shade plugin configuration to build a fat jar (don't need to set any 
exclusions (which is doomed to get out-of-sync)).


If I am not overlooking anything, this approach is much cleaner and should be 
the default.

– Ufuk


Reply via email to