Packaging your Application
On this page
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.
Ververica Platform supports Java 8 and 11 since version 2.5.0. See Supported Versions & Compatibility for details.
Ververica Apache Flink® Dependencies
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.
1<repository>
2 <id>vvp-flink-releases</id>
3 <url>https://maven.ververica.com/artifactory/vvp-flink-release/</url>
4 <releases>
5 <enabled>true</enabled>
6 </releases>
7 <snapshots>
8 <enabled>false</enabled>
9 </snapshots>
10</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.
1<dependencies>
2 <dependency>
3 <groupId>com.ververica.flink</groupId>
4 <artifactId>flink-connector-kafka_2.12</artifactId>
5 <version>1.11.2-stream2</version>
6 </dependency>
7</dependencies>