前提
这个系列以Flink1.12分支的源码作为解读范本,以yarn-per-job模式讲解源码,请自行下载Flink源码
程序起点
一般来说,我们使用yarn容器执行Flink任务,会选择命令行提交模式,比如:
./bin/flink run -t yarn-per-job -c ... xx.jar
因此找到flink脚本,发现一行很重要的命令:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210605160942936.png)
因此可以看到Flink提交任务的入口类是org.apache.flink.client.cli.CliFrontend
找到此类的main方法:
public