想深入学习Flink的同学,阅读源码是非常有效的一个方式,只是有时候苦于不知道怎么去看源码而觉得无从下手,今天带你如何编译修改Flink源码,学习Flink立即变得简单起来了。
01
下载Flink源码
进入Flink官网,https://flink.apache.org/ 找到downloads按钮

找到Apache Flink 1.18.0 Source Release (asc, sha512),这里你可以选择你想学习的任何版本

02
导入IDEA
将下载后的源码进行解压

使用IDEA打开flink-1.18.0,file->open->选择flink-1.18.0

配置maven
setting->Build,Execution,Deployment->Build Tools->Maven

maven安装同学们可以自行百度,一般都配置国内源:阿里源,清华源等。maven 配置阿里云

03
编译Flink源码
Terminal -> 选择Command Prompt -> 输入编译命令
mvn clean install -DskipTests -Dfast -Pskip-webui-build -T 1C

等待编译完成

04
运行Flink自带example代码
找到flink-examples下面的任何一个可运行代码,右键 run


ok,至此,Flink源码编译成功。
05
修改源代码
我们这里选择刚才运行的wordcount代码中的
ExecutionEnvironment.getExecutionEnvironment()方法

光标放到方法上面,ctrl+鼠标点击,进入该方法,修改代码,我们这里随便打印个信息吧

然后按照步骤三编译代码,按照步骤四再次运行wordcount代码,看这个测试代码是不是打印出来了

现在你就可以任意魔改代码了,如果感兴趣的话,可以直接给Flink提PR,如何提PR,我之前的文章也介绍过,基本过程都一样
【共建开源】手把手教你贡献一个Seatunnel PR,超级详细教程!
想参与开源,不懂怎么PR(Pull Request),看这篇就够了
这个时候,有同学可能就要问了,那我们编译好的jar去哪里了,看这里

flink-dist->target->flink-1.18.0-bin->flink-1.18.0,这个目录跟从官网下载下来的二进制安装包解压后的目录结构是不是一样的,我们把这个目录压缩成tar.gz包上传到服务器就可以使用了。
往期回顾




