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:

<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-java_2.10</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>

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.

Scala-dependent modules

Popular Scala-dependent modules

flink-avro
flink-clients
flink-connector-kafka-0.8
flink-connector-kafka-0.9
flink-gelly
flink-gelly-scala
flink-hbase
flink-ml
flink-streaming-java
flink-streaming-scala
flink-table

All Scala-dependent modules

flink-avro
flink-clients
flink-connector-elasticsearch
flink-connector-filesystem
flink-connector-flume
flink-connector-kafka-0.8
flink-connector-kafka-0.9
flink-connector-kafka-base
flink-connector-nifi
flink-connector-rabbitmq
flink-connector-twitter
flink-connector-wikiedits
flink-dist
flink-examples
flink-examples-batch
flink-examples-streaming
flink-fs-tests
flink-gelly
flink-gelly-scala
flink-hadoop-compatibility
flink-hbase
flink-java8
flink-ml
flink-operator-stats
flink-optimizer
flink-python
flink-runtime
flink-runtime-web
flink-scala
flink-scala-shell
flink-storm
flink-storm-examples
flink-streaming-contrib
flink-streaming-java
flink-streaming-scala
flink-table
flink-test-utils
flink-tests
flink-tweet-inputformat
flink-yarn

Scala-free modules

flink
flink-annotations
flink-batch-connectors
flink-contrib-parent
flink-core
flink-hcatalog
flink-java
flink-jdbc
flink-libraries
flink-quickstart
flink-quickstart-java
flink-quickstart-scala
flink-shaded-curator
flink-shaded-curator-recipes
flink-shaded-curator-test
flink-shaded-hadoop
flink-shaded-hadoop2
flink-shaded-include-yarn-tests
flink-streaming-connectors
  • No labels