【Flink入门修炼】1-2 Mac 搭建 Flink 源码阅读环境
在后面学习 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 源码阅读环境的更多相关文章
- Mac搭建Hadoop源码阅读环境
1.本次Hadoop源码阅读环境使用的阅读工具是idea,Hadoop版本是2.7.3.需要安装的工具包括idea.jdk.maven.protobuf等 2.jdk,使用的版本是1.8版,在jdk官 ...
- 利用IDEA搭建JDK源码阅读环境
利用IDEA搭建JDK源码阅读环境 首先新建一个java基础项目 基础目录 source 源码 test 测试源码和入口 准备JDK源码 下图框起来的路径就是jdk的储存位置 打开jdk目录,找到sr ...
- 【深入浅出 Yarn 架构与实现】1-2 搭建 Hadoop 源码阅读环境
本文将介绍如何使用 idea 搭建 Hadoop 源码阅读环境.(默认已安装好 Java.Maven 环境) 一.搭建源码阅读环境 一)idea 导入 hadoop 工程 从 github 上拉取代码 ...
- win7+idea+maven搭建spark源码阅读环境
1.参考. 利用IDEA工具编译Spark源码(1.60~2.20) https://blog.csdn.net/He11o_Liu/article/details/78739699 Maven编译打 ...
- 搭建 Spring 源码阅读环境
前言 有一个Spring源码阅读环境是学习Spring的基础.笔者借鉴了网上很多搭建环境的方法,也尝试了很多,接下来总结两种个人认为比较简便实用的方法.读者可根据自己的需要自行选择. 方法一:搭建基础 ...
- Spring源码分析_01_ idea搭建spring源码阅读环境
二.参考资料 1.Intellij Idea如何导入spring源码
- Sping学习笔记(一)----Spring源码阅读环境的搭建
idea搭建spring源码阅读环境 安装gradle Github下载Spring源码 新建学习spring源码的项目 idea搭建spring源码阅读环境 安装gradle 在官网中下载gradl ...
- 【Java】用IDEA搭建源码阅读环境
用IDEA搭建源码阅读环境 参考自CodeSheep的Mac源码环境搭建, https://www.bilibili.com/video/BV1V7411U78L 但是实际上在Windows搭建的差别 ...
- 基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建
基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建 作者:Awesome 日期:2017-10-21 需准备的软件工具 Ardupilot飞控源码 PX4 toolchain JAVA ...
- Spring5源码阅读环境搭建-gradle构建编译
前沿:Spring系列生态十分丰富,涉及到各个方面.但是作为Spring生态的核心基础Spring,是最重要的环节,需要理解Spring的设计原理,我们需要解读源码. 在构建Spring源码阅 ...
随机推荐
- vue用qrcodejs2生成二维码,解决多个二维码追加的问题
vue使用qrcodejs2生成二维码 1.安装qrcodejs2 npm install qrcodejs2 2.代码 //导入组件 import QRCode from 'qrcodejs2' / ...
- mouseenter和mouseover区别
mouseenter事件 当鼠标移动到元素上时,就会触发mouseenter事件. 类似mouseover,它们两者之间的差别是:mouseover鼠标经过自身盒子会触发,经过子盒子还会触发.mous ...
- freeswitch的mod_xml_cdr模块
概述 freeswitch是一款简单好用的VOIP开源软交换平台. 在语音呼叫的过程中,话单是重要的计价和结算依据,话单的产生需要稳定可靠,可回溯. fs中的mod_xml_cdr模块提供了基本话单功 ...
- docker容器常用操作
1.查看运行容器 docker ps: 2.查看所有容器 docker ps -a: 3.查看容器的日志 docker logs 容器名称/容器ID: 4.运行镜像 docker run --na ...
- java进阶(16)--System常用方法总结
一.Systen.out静态变量 静态变量,用的最多的是调用print方法 二.System.out.println() println()其实是printStream类的方法 三.Sytem ...
- @Import 源码解析
转发请注明出处: @Import通过快速导入的方式实现把实例加入spring的IOC容器中:一般@EnableXXX注解是通过@Import实现具体的功能(@EnableXXX注解上加个@Import ...
- Postman 接口测试配置 Pre-request Script
本文为博主原创,转载请注明出处: Pre-request Script 为Postman预置脚本,用于在postman 发送请求之前执行,封装计算或获取某些请求参数. 1. postman 脚本提供 ...
- GoMusic-歌单迁移工具网站 一键迁移网易云/QQ音乐歌单至 Apple/Youtube/Spotify Music
GoMusic是什么: GoMusic是一个在线歌单迁移工具网站,帮助用户一键迁移网易云/QQ音乐歌单至 Apple/Youtube/Spotify Music,直接输入歌单链接,复制查询结果,打开 ...
- [转帖]shell编程:shell变量的核心基础知识与实战(二)
shell编程:shell变量的核心基础知识与实战(二) https://www.cnblogs.com/luoahong/articles/9152039.html Shell 变量类型 变量可以分 ...
- linux获取文件或者是进程精确时间的方法
linux获取文件或者是进程精确时间的方法 背景 很多时候需要精确知道文件的具体时间. 也需要知道进程的开始的精确时间. 便于进行一些计算的处理. 其实linux里面有很多方式进行文件属性的查看. 这 ...