Flink编译(包括最新Flink1.12编译)

本文档详细指导如何从Apache Flink release-1.12版源码开始,包括下载地址选择、编译命令详解、常见问题解决,以及编译成功的确认步骤。重点介绍如何配置多线程并避开npm下载问题,适合Flink开发者快速上手。
摘要由CSDN通过智能技术生成

一、源码下载

1、github地址(选择对应的release版本)

https://github.com/apache/flink/tree/release-1.12

2、关于flink 分支的选择

最好选用release-xxx版本,少用tag版本

3、flink不同版本之间的编译区别

Flink不同版本间的编译区别,我的另一篇文档

二、编译

1、编译命令:

我的maven版本是3.25,也用了多线程编译,刚好我的版本也是官网推荐是3.25编译

cd xxxx/flink
mvn clean install -DskipTests -Dfast -T 4 -Dmaven.compile.fork=true  -Dscala-2.11

分解:
mvn clean install \
  -DskipTests \ # 跳过测试部分
  -Dfast \ # 跳过doc检查等
  -T 4 \ # 支持多处理器或者处理器核数参数,加快构建速度,推荐Maven3.3及以上
  -Dmaven.compile.fork=true #允许多线程编译,推荐maven在3.3及以上

2、我走过的坑

(1)flink-runtime-web这个包访问外网npm下载难,需要改一下这个包下的pom文件(执行编译命令前需要做的事)

搜索“ci --cache-max=0 --no-save”替换为“install -registry=https://registry.npm.taobao.org --cache-max=0 --no-save”
即:install -registry=https://registry.npm.taobao.org --cache-max=0 --no-save

3、找到编译好的Flink包

看到BUILD SUCCESS就说明编译成功了。

将flink/flink-dist/target/flink-1.12-SNAPSHOT-bin这个目录下的flink-1.12-SNAPSHOT包就是可以运行的flink包了。

上百节课视频详细讲解,需要的小伙伴自行百度网盘下载,链接见附件,永久有效。 共课程含9个章节:Flink安装部署与快速入门、Flink批处理API、Flink流处理API、Flink高级API、Flink-Table与SQL、Flink-Action综合练习、Flink-高级特性和新特性、Flink多语言开发、Flink性能调优 课程目录: Flink-day01 00-[了解]-课程介绍 01-[了解]-Flink概述 02-[掌握]-Flink安装部署-local本地模式 03-[掌握]-Flink安装部署-Standalone独立集群模式 04-[掌握]-Flink安装部署-Standalone-HA高可用集群模式 05-[重点]-Flink安装部署-On-Yarn-两种提交模式 06-[重点]-Flink安装部署-On-Yarn-两种提交模式-演示 07-[了解]-Flink入门案例-前置说明 08-[掌握]-Flink入门案例-环境准备 09-[掌握]-Flink入门案例-代码实现-1-DataSet 10-[掌握]-Flink入门案例-代码实现-2-DataStream流批一体-匿名内部类版 11-[掌握]-Flink入门案例-代码实现-2-DataStream流批一体-Lambda版 12-[掌握]-Flink入门案例-代码实现-2-DataStream流批一体-On-Yarn 13-[掌握]-Flink原理初探-角色分工-执行流程-DataFlow 14-[掌握]-Flink原理初探-TaskSlot和TaskSlotSharing 15-[掌握]-Flink原理初探-执行流程图生成 Flink-day02 01-[理解]-流处理核心概念说明 02-[掌握]-Source-基于集合 03-[掌握]-Source-基于文件 04-[掌握]-Source-基于Socket 05-[掌握]-Source-自定义Source-随机生成订单数据 06-[掌握]-Source-自定义Source-实时加载MySQL数据 07-[掌握]-Source-Transformation-基本操作 08-[掌握]-Source-Transformation-合并和连接 09-[掌握]-Source-Transformation-拆分和选择 10-[掌握]-Source-Transformation-重平衡分区 11-[掌握]-Source-Transformation-其他分区 12-[掌握]-Source-Sink-基于控制台和文件 13-[掌握]-Source-Sink-自定义Sink 14-[了解]-Connectors-JDBC 15-[重点]-Connectors-Flink整合Kafka-Source 16-[重点]-Connectors-Flink整合Kafka-Sink-实时ETL 17-[了解]-Connectors-Redis Flink-day03 01-[了解]-Flink高级API-四大基石介绍 02-[了解]-Flink高级API-Window-分类和API介绍 03-[掌握]-Flink高级API-Window-基于时间的滑动和滚动窗口 04-[了解]-Flink高级API-Window-基于数量的滑动和滚动窗口 05-[了解]-Flink高级API-Window-会话窗口 06-[理解]-Flink高级API-Time-时间分类和事件时间的重要性及Watermaker的引入 07-[理解]-Flink高级API-Time-Watermaker概念详解 08-[理解]-Flink高级API-Time-Watermaker图解 09-[掌握]-Flink高级API-Time-Watermaker-代码演示 10-[了解]-Flink高级API-Time-Watermaker-代码演示-理论验证 11-[掌握]-Flink高级API-Time-Watermaker-outputTag-allowedlateness解决数据丢失 12-[了解]-Flink高级API-State-Flink中状态的自动管理 13-[了解]-Flink高级API-State-有状态计算和无状态计算 14-[了解]-Flink高级API-State-状态分类 15-[了解]-Flink高级API-State-keyState代码演示 16-[了解]-Flink高级API-State-OperatorState代码演示 Flink-day04-07等等
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值