在后面学习 Flink 相关知识时,会深入源码探究其实现机制。因此,需要现在本地配置好源码阅读环境。

本文搭建环境:

  • Mac M1(Apple Silicon)
  • Java 8
  • IDEA
  • Flink 官方源码

一、 下载 Flink 源码

github 地址:https://github.com/apache/flink

考虑到一些原因,github 下载可能会极其缓慢,且大概率失败。

可以考虑使用 gitee 地址:https://gitee.com/apache/flink

git clone https://gitee.com/apache/flink.git

忽略重构提交

Flink 文档中提到了下面的操作:

(作用未知,可做可不做)

在 .git-blame-ignore-revs 中保留了一个大的重构提交列表。使用 git blame 查看更改注释时,忽略这些注释会很有帮助。你可以使用以下方法来配置 git 和你的 IDE:

git config blame.ignoreRevsFile .git-blame-ignore-revs

二、导入到 IDEA

1、使用 file-open 选择对应的文件夹导入即可

2、等待 idea 添加索引、mvn 下载包等(较长时间,先去干点别的)

3、此时可能会看到一堆报错,各种包找不到的情况。

别慌,点击右侧 maven - Generate Sources and Update Folders For All Projects。将 Flink 库安装在本地 Maven 存储库中

4、上方 Build - Rebuild Project

5、等待上一步进度条完成后,重启 idea

6、idea 会再次 重建索引、mvn 等相关操作。等待完成后,报错都会消失了。

可以开始愉快的阅读源码了,后面一起探究 Flink 相关知识和原理吧。


参考文章:

导入 Flink 到 IDE 中

【Flink入门修炼】1-2 Mac 搭建 Flink 源码阅读环境的更多相关文章

  1. Mac搭建Hadoop源码阅读环境

    1.本次Hadoop源码阅读环境使用的阅读工具是idea,Hadoop版本是2.7.3.需要安装的工具包括idea.jdk.maven.protobuf等 2.jdk,使用的版本是1.8版,在jdk官 ...

  2. 利用IDEA搭建JDK源码阅读环境

    利用IDEA搭建JDK源码阅读环境 首先新建一个java基础项目 基础目录 source 源码 test 测试源码和入口 准备JDK源码 下图框起来的路径就是jdk的储存位置 打开jdk目录,找到sr ...

  3. 【深入浅出 Yarn 架构与实现】1-2 搭建 Hadoop 源码阅读环境

    本文将介绍如何使用 idea 搭建 Hadoop 源码阅读环境.(默认已安装好 Java.Maven 环境) 一.搭建源码阅读环境 一)idea 导入 hadoop 工程 从 github 上拉取代码 ...

  4. win7+idea+maven搭建spark源码阅读环境

    1.参考. 利用IDEA工具编译Spark源码(1.60~2.20) https://blog.csdn.net/He11o_Liu/article/details/78739699 Maven编译打 ...

  5. 搭建 Spring 源码阅读环境

    前言 有一个Spring源码阅读环境是学习Spring的基础.笔者借鉴了网上很多搭建环境的方法,也尝试了很多,接下来总结两种个人认为比较简便实用的方法.读者可根据自己的需要自行选择. 方法一:搭建基础 ...

  6. Spring源码分析_01_ idea搭建spring源码阅读环境

    二.参考资料 1.Intellij Idea如何导入spring源码

  7. Sping学习笔记(一)----Spring源码阅读环境的搭建

    idea搭建spring源码阅读环境 安装gradle Github下载Spring源码 新建学习spring源码的项目 idea搭建spring源码阅读环境 安装gradle 在官网中下载gradl ...

  8. 【Java】用IDEA搭建源码阅读环境

    用IDEA搭建源码阅读环境 参考自CodeSheep的Mac源码环境搭建, https://www.bilibili.com/video/BV1V7411U78L 但是实际上在Windows搭建的差别 ...

  9. 基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建

    基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建 作者:Awesome 日期:2017-10-21 需准备的软件工具 Ardupilot飞控源码 PX4 toolchain JAVA ...

  10. Spring5源码阅读环境搭建-gradle构建编译

      前沿:Spring系列生态十分丰富,涉及到各个方面.但是作为Spring生态的核心基础Spring,是最重要的环节,需要理解Spring的设计原理,我们需要解读源码.   在构建Spring源码阅 ...

随机推荐

  1. 十一、docker的容器互联

    系列导航 一.docker入门(概念) 二.docker的安装和镜像管理 三.docker容器的常用命令 四.容器的网络访问 五.容器端口转发 六.docker数据卷 七.手动制作docker镜像 八 ...

  2. shell 实现项目的启动与停止

    本文为博主原创,转载请注明出处: 1. 以tomcat 为例,编写启动脚本: #!/bin/sh bin=$(cd `dirname $0`; pwd) pid=$(ps aux | grep tom ...

  3. Python-函数-算术函数

    #python-函数-算术函数 #(1)加减乘除 #加法 add(),减法 subtract(),乘法 multiply(),除法 divide() #作用:数组间的加减乘除 import numpy ...

  4. 宝塔部署 springboot 项目遇到的 一些bug处理方案

    1,上传的项目(jar包)的数据库用户名 .密码 , 和服务器的数据库用户名.密码不一致 2,数据库的表结构没有创建 3, 宝塔 phpmyadmin 进不去 原因: 服务器没有放行888端口, 宝塔 ...

  5. VIte+Vue3 打包在本地 双击 index.html 打开项目

    npm i @vitejs/plugin-legacy --save import legacy from '@vitejs/plugin-legacy'; export default define ...

  6. Oracle表结构&数据类型&约束

    1.Oracle 表结构 1.1.创建表名的规范 推荐以"t_xxx" 不能含有"+- "等非法字符,eg:sql create table "t-1 ...

  7. [转帖]1. awk基础,awk介绍,awk基本语法,直接使用action,打印列,初识列和行,\$0、\$NF、NF,基础示例,begin模式,end模式

    文章目录 前言 awk介绍 awk基本语法 直接使用action 打印列 初识列和行 \$0.\$NF.NF 基础示例 初识模式(begin end) 总结 友情链接 前言 本小节是awk基础入门课程 ...

  8. [转帖]Jmeter中如何读取MYSQL数据作为请求参数

    在项目测试过程中,我经常需要将数据库中的数据作为参数传递到请求中.Jmeter中MYSQL数据库连接操作过程如下: 1.下载/n导入mysql的jdbc驱动包 下载mysql驱动包地址: http:/ ...

  9. [转帖]细说Redis监控和告警

    https://blog.csdn.net/sD7O95O/article/details/78096956 对于任何应用服务和组件,都需要一套完善可靠谱监控方案.尤其redis这类敏感的纯内存.高并 ...

  10. 责任链和策略设计模式-基于Java编程语言

    作者:京东物流 钟磊 1 前言 最近在梳理接口逻辑的时候发现,代码中使用的策略和责任链设计模式给我留下了非常深刻的印象.一个业务逻辑流程通常非常适合使用责任链和策略设计模式来实现,因为一个业务需求通常 ...