目前我们编写flink程序有很多种实现方式,有java的,有scala的,有python的等等,这里我们介绍下针对于java方面,如果涉及到flink编程,那么哪些api对应使用哪些maven依赖呢?
一、flink的核心依赖
<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-core</artifactId> <version>1.15.0</version> <scope>provided</scope> </dependency>
这个核心依赖主要是flink系统本身所必须需要的类。
二、flink的流处理依赖
<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-streaming-java</artifactId> <version>1.15.0</version> <scope>provided</scope> </dependency>
使用java进行流处理,那么就需要引入java的streaming依赖。
三、flink的TableAPI依赖
<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-api-java-bridge</artifactId> <version>1.15.0</version> <scope>provided</scope> </dependency>
使用Table api或者sql进行flink应用程序的开发的时候,我们需要引入到这个类,如果应用程序在本地运行,同时使用到OldPlanner的话,则需要添加如下依赖
<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-planner_2.12</artifactId> <version>1.15.0</version> <scope>provided</scope> </dependency>
如果使用的是BlinkPlanner,则需要添加如下依赖
<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-planner-blink_2.12</artifactId> <version>1.13.6</version> <scope>test</scope> </dependency>
同时在使用Table API的时候,我们部分源码是用scala写的,因此在代码里面我们还需要添加scala的依赖
<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-streaming-scala_2.12</artifactId> <version>1.15.0</version> <scope>provided</scope> </dependency>
当然还有一个,在使用sql的话,还需要添加common依赖
<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-common</artifactId> <version>1.15.0</version> <scope>provided</scope> </dependency>
如果需要在开发工具中运行验证的话,还需要添加client依赖
<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-clients</artifactId> <version>1.15.0</version> </dependency>
还没有评论,来说两句吧...