由于 hadoop 升级,flink 使用 1.8 版本,需要自定义编译继承 hadoop 3.3.1。
由于历史原因,使用的 flink 版本较低,建议大家使用 flink 1.10 及以上的版本。
一、编译 flink
1、下载源码
git clone -b release-1.8 https://github.com/apache/flink.git
注意:可根据依赖的 flink 版本,切换到对应的分支。
2、编译源码
# skip test
mvn clean install -DskipTests
# 快速编译,skip test、QA、document 等
mvn clean install -DskipTests -Dfast
二、编译 flink-shaded
如果项目需要使用到 hadoop 环境,则需要集成 hadoop 依赖。官方有提供一些 hadoop 版本的集成包,可以将依赖包引入到项目中,或者放置到 flink/lib 目录下。
https://repo.maven.apache.org/maven2/org/apache/flink/flink-shaded-hadoop-2-uber/
第一串数字表示 hadoop 版本,第二串数据表示 flink 版本

本文档介绍了如何编译Flink 1.8版本以适配Hadoop 3.3.1。首先从GitHub克隆Flink和flink-shaded源码,然后分别进行编译,过程中可能会遇到maven-shade-plugin版本过低和测试失败的问题,解决方案是升级插件版本并设置测试失败忽略。对于不支持的Hadoop版本,需要自行打包编译flink-shaded。
最低0.47元/天 解锁文章
2146

被折叠的 条评论
为什么被折叠?



