Flink 项目开发流程


Project Configuration

创建项目

# 使用 maven archetypes
$ mvn archetype:generate                               \
      -DarchetypeGroupId=org.apache.flink              \
      -DarchetypeArtifactId=flink-quickstart-java      \
      -DarchetypeVersion=1.10.0

创建的项目目录如下:

demo-flink
├── pom.xml
└── src
    └── main
        ├── java
        │   └── demo
        │       ├── BatchJob.java     # DataSet 基础骨架程序
        │       └── StreamingJob.java # DataStream 基础骨架程序
        └── resources
            └── log4j.properties

编写作业内容

StreamJob 流处理作业应用程序示例

BatchJob 批处理处理作业应用程序示例

构建项目

在项目目录下运行 maven 打包命令。

mvn clean package

命令执行后,你将找到一个JAR文件,里面包含了你的应用程序,以及已作为依赖项添加到应用程序的连接器和库:target/<artifact-id>-<version>.jar。

开发调试

可以直接在 Intellij IDEA 中运行调试 Flink 作业程序,由于模板创建的 flink-java、flink-streaming-java 依赖都被标记为 provided,直接运行会报 Flink 运行时 ClassNotFoundException,此时有 2 种类解决方式:

  1. 新增一个 pom profile ,将 flink-java、flink-streaming-java 这些运行时依赖标记为 compile;