For Flink's 1.0 release, changes have been merged that will affect how you build Flink programs with the latest snapshot version of Flink and with future releases. Maven artifacts which depend on Scala are now suffixed with the Scala major version, e.g. "2.10" or "2.11".

While some of the Maven modules are Scala-free, e.g. "flink-java" or "flink-core", most of the artifacts now carry the default Scala 2.10 suffix, e.g. "flink-streaming-java_2.10" or "flink-clients_2.10". This way of suffixing artifact names is common practice and inevitable to avoid Scala version conflicts, because Scala code is only compatible across minor versions, e.g. 2.11.x is compatible with 2.11.y but not 2.10.x with 2.11.x.

Please note that you have to update artifact names in your project pom if you work with 1.0-SNAPSHOT. For example, if you use "flink-streaming-java", please update the dependency as follows:

The documentation has also been updated to indicate the suffixes where required. The following sections list all Scala-dependent and Scala-free modules. For Scala-dependent artifacts, you have to add the suffix as in the above example.