导读:Apache Flink是一个框架和分布式处理引擎,用于对无边界和有边界的数据流进行有状态的计算 。官方文档虽然很详细,但想对Flink进一步深入了解则需要阅读Flink的源码 。本文主要讨论Flink源码获取编译,及可能会遇到的问题及解决方案 。

文章插图
基本环境
- 至少JDK 8
- Maven 3
- Flink官网推荐工具使用 IDEA(下面内容均基于IDEA)
//使用git从github拉取https://github.com/apache/flink/由于从GitHub拉取比较慢,解决的方式有多种 。这里列举一种借助gitee的方式:1、登录gitee -- 创建仓库 -- 导入已有仓库,耐心等待一段时间 。

文章插图
2、将代码从gittee clone到本地 。
下载安装 Scala 插件因Flink具有用scala编写的API,因需要配置Scala插件及Scala SDK 。
配置Scala IDEA插件:File -- Settings -- Plugins -- Maketplace -- 搜索Scala -- install

文章插图
下载并配置Scala SDK
https://www.scala-lang.org/download///从官网下载scala的SDK
文章插图
配置Scala SDK:File -- Project Structure -- Platform Settings -- Global Libraries -- +号 -- 选择Scala SDK

文章插图
这里选择Brown--指定刚下好Scala SDK 目录(解压)

文章插图
执行编译命令
mvn clean install -DskipTests -Drat.skip=true可能会遇到的问题及解决方案问题1:由于flink-runtime-web模块引入了frontend-maven-plugin依赖,并安装了node和部分依赖组件,会因网络原因导致 [ERROR] Failed to execute goal com.github.eirslett:frontend-maven-plugin:1.6:install-node-and-npm (install node and npm)解决方式:
//修改 flink-runtime-web 的 pom,xml 文件镜像为淘宝镜像<nodeDownloadRoot>http://npm.taobao.org/mirrors/node/</nodeDownloadRoot><npmDownloadRoot>http://npm.taobao.org/mirrors/npm/</npmDownloadRoot>
文章插图
问题2:Could not resolve dependencies for project org.apache.flink:flink-avro-confluent-registry:jar:1.6.2:
解决方式:
//1、下载kafka-schema-registry-client-4.1.0.jar http://packages.confluent.io/maven/io/confluent/kafka-schema-registry-client/4.1.0/kafka-schema-registry-client-4.1.0.jar //2、手动安装mvn install:install-file -DgroupId=io.confluent -DartifactId=kafka-schema-registry-client -Dversion=4.1.0 -Dpackaging=jar-Dfile=你所存放的目录/kafka-schema-registry-client-4.1.0.jar//3、继续编译mvn clean install -DskipTests -Drat.skip=true -rf :flink-avro-confluent-registry编译完成
文章插图
感谢您的阅读,如果喜欢本文欢迎关注和转发,本头条号将坚持原创,持续分享IT技术知识 。对于文章内容有其他想法或意见建议等,欢迎提出共同讨论共同进步
推荐阅读
- PE环境下安装操作系统
- C盘清理瘦身就这三招 收好下次不必到处找
- 一下雨就反味!卫生间里的臭味从哪来?我有三招,可以一劳永逸
- 缺铁的花草,普遍存在4个共性,不妨对照一下,及时补
- 螃蟹吃剩下怎么保存
- 地理|每天7万吨!趵突泉的水哪来的?真在下边埋了个水管?
- 谷歌、Facebook双垄断局面松动,出海大潮下中国广告平台“虎口夺食”
- 普洱茶熟沱茶,熟沱茶是什么样子的
- 夏季喝花茶:目的不同对症下茶,不同品种花茶的功效
- 旗下准合资公司电动车锂电池电解液原材料成功生产信阳毛尖(00362)盈喜兼成功供股前景可期
