Skip to main content
Version: 2.12

Packaging your Application

In general, you package your DataStream, Table API or DataSet API program for Ververica Platform in the same as for any other Apache Flink® runtime. The Apache Flink® documentation provides example project setups for Maven & Gradle to get you started.

note

Ververica Platform supports Java 8 and 11 since version 2.5.0. See Supported Versions & Compatibility for details.

Ververica Platform comes with our own distribution of Apache Flink®. Our distribution is always compatible with vanilla Apache Flink®, but might include additional and/or more timely bug and security vulnerability fixes.

Our Apache Flink® Docker images are built from our distribution of Apache Flink®, but the Docker images do not contain all Apache Flink® dependencies that you might need to run your program. Most importantly, connector dependencies, e.g. for Apache Kafka®, are not provided by the Ververica runtime, but need to be bundled by the user.

In order for you to use our distribution of Apache Flink® when packaging your program, we host a Maven repository including these dependencies. Please follow the instructions to integrate it with your build.

Step 1: Add Maven Repository

First, you need to add maven.ververica.com as an additional repository to your build system.

<repository>
<id>vvp-flink-releases</id>
<url>https://maven.ververica.com/artifactory/vvp-flink-release/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>

Step 2: Change Maven Group IDs & Version

Second, our distribution of Apache Flink® is published under a different Maven group id and version than vanilla Apache Flink®. The group id is "com.ververica.flink" instead of "org.apache.flink". The versions follows the versioning of Apache Flink® with an additional counter for off-cycle releases: "<major>.<minor>.<patch>-<stream|spring>``<ververica-version-counter>".

For example, our second releases for Apache Flink® 1.11.2 would have the versions "1.11.2-stream2"" and "1.11.2-spring2". The stream|spring tag identifies the edition of Ververica Platform that you are using.

Please see Ververica Platform Public Registry for a list of available versions. The Maven version corresponds to the Docker image tag.

<dependencies>
<dependency>
<groupId>com.ververica.flink</groupId>
<artifactId>flink-connector-kafka_2.12</artifactId>
<version>1.11.2-stream2</version>
</dependency>
</dependencies>