flink编译支持CDH6.2.0(hadoop3.0.0)
准备工作
因为在编译时需要下载许多依赖包,在执行编译前最好先配置下代理仓库
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>
编译flink-shaded
因为flink依赖flink-shaded工程,基本的依赖项都是在这个工程里面定义的,所以要先编译这个工程
下载flink-shaded工程flink-shaded
在写文章时,最新的release版本是8.0,里面用的hadoop及zookeeper对应版本如下
<properties>
<avro.version>1.8.2</avro.version>
<slf4j.version>1.7.15</slf4j.version>
<log4j.version>1.2.17</log4j.version>
<hadoop.version>2.4.1</hadoop.version>
<zookeeper.version>3.4.10</zookeeper.version>
<findbugs.version>1.3.9</findbugs.version>
</properties>
将hadoop和zk改成自己CDH6.2.0对应的版本,修改flink-shaded-hadoop-2工程的pom文件
<properties>
<avro.version>1.8.2</avro.version>
<slf4j.version>1.7.15</slf4j.version>
<log4j.version>1.2.17</log4j.version>
<hadoop.version>3.0.0</hadoop.version>
<zookeeper.version>3.4.5</zookeeper.version>
<findbugs.version>1.3.9</findbugs.version>
</properties>
修改编译后的版本号
- 设置/Users/chengaofeng/git/flink-shaded/tools/releasing/update_branch_version.sh 工程中的OLD_VERSION=8.0和NEW_VERSION=9.0
- 在tools目录下执行 sh releasing/update_branch_version.sh 命令
修改flink-shaded-hadoop-2和flink-shaded-hadoop-2-uber工程中依赖的外部变量名称
<artifactId>flink-shaded-hadoop-2-uber</artifactId>
<name>flink-shaded-hadoop-2-uber</name> <packaging>jar</packaging>
<version>${hadoop.version}-9.0</version>
<artifactId>flink-shaded-hadoop-2</artifactId>
<name>flink-shaded-hadoop-2</name> <packaging>jar</packaging>
<version>${hadoop.version}-9.0</version>
进入flink-shaded目录执行编译
mvn clean install -DskipTests -Drat.skip=true -Pvendor-repos -Dhadoop.version.cdh=3.0.0
效果图
编译flink
下载源码flink
写文章时最新的release版本是1.9,所以下载1.9版本的代码
修改对应的hadoop和flink.shaded.version值为我们需要的值
<hadoop.version>3.0.0</hadoop.version>
...
<flink.shaded.version.old>7.0</flink.shaded.version.old>
<flink.shaded.version>9.0</flink.shaded.version>
...
<hivemetastore.hadoop.version>3.0.0</hivemetastore.hadoop.version>因为只想更新hadoop的版本,所以依赖的其他flink-shaded版本不做变更,以下jackson举例说明,还是用旧的版本(用最新的编译没有编译过)
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-shaded-jackson</artifactId>
<version>${jackson.version}-${flink.shaded.version.old}</version>
</dependency> <dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-shaded-jackson-module-jsonSchema</artifactId>
<version>${jackson.version}-${flink.shaded.version.old}</version>
</dependency>
修改flink-connectors/flink-hbase中依赖的hbase版本号
<properties>
<hbase.version>2.1.2</hbase.version>
</properties>
之后需要修改这个工程中的AbstractTableInputFormat.java,TableInputFormat.java以及junit中的编译错误
修改版本号
修改tools/change-version.sh中新旧版本号OLD="1.9-SNAPSHOT"
NEW="1.9-H3"执行脚本change-version.sh
注释掉不需要编译的工程,因为这个编译太耗时间,可以把测试相关的包去掉
执行编译
mvn clean install -DskipTests -Pvendor-repos -Drat.skip=true -Pinclude-hadoop
编译结果
在工程中使用新编译出的版本
<properties>
<flink.version>1.9-H3</flink.version>
</properties>对应修改后的代码地址github 版本:release-1.9
flink编译支持CDH6.2.0(hadoop3.0.0)的更多相关文章
- Hadoop3.2.0使用详解
1.概述 Hadoop3已经发布很久了,迭代集成的一些新特性也是很有用的.截止本篇博客书写为止,Hadoop发布了3.2.0.接下来,笔者就为大家分享一下在使用Hadoop3中遇到到一些问题,以及解决 ...
- CentOS7搭建Hadoop-3.3.0集群手记
前提 这篇文章是基于Linux系统CentOS7搭建Hadoop-3.3.0分布式集群的详细手记. 基本概念 Hadoop中的HDFS和YARN都是主从架构,主从架构会有一主多从和多主多从两种架构,这 ...
- Gobblin编译支持CDH5.4.0
作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 Gobblin的前身是linkedin的Camus,好多人也用过,准备用Gobblin的方式来抽 ...
- nginx编译支持HTTP2.0
nginx编译支持HTTP2.0 nginx编译支持HTTP2.0 wget https://www.openssl.org/source/openssl-1.1.0i.tar.gz #openssl ...
- hadoop搭建伪分布式集群(centos7+hadoop-3.1.0/2.7.7)
目录: Hadoop三种安装模式 搭建伪分布式集群准备条件 第一部分 安装前部署 1.查看虚拟机版本2.查看IP地址3.修改主机名为hadoop4.修改 /etc/hosts5.关闭防火墙6.关闭SE ...
- [环境配置]Ubuntu 16.04 源码编译安装OpenCV-3.2.0+OpenCV_contrib-3.2.0及产生的问题
1.OpenCV-3.2.0+OpenCV_contrib-3.2.0编译安装过程 1)下载官方要求的依赖包 GCC 4.4.x or later CMake 2.6 or higher Git GT ...
- PHP7 学习笔记(一)Ubuntu 16.04 编译安装Nginx-1.10.3、 PHP7.0.9、Redis3.0 扩展、Phalcon3.1 扩展、Swoole1.9.8 扩展、ssh2扩展(全程编译安装)
==================== PHP 7.0 编译安装================== wget http://cn2.php.net/get/php-7.0.9.tar.bz2/fr ...
- hadoop3.1.0 window win7 基础环境搭建
https://blog.csdn.net/wsh596823919/article/details/80774805 hadoop3.1.0 window win7 基础环境搭建 前言:在windo ...
- 【hadoop】hadoop3.2.0应用环境搭建与使用指南
下面列出我搭建hadoop应用环境的文章整理在一起,不定期更新,供大家参考,互相学习!!! 杂谈篇: [英语学习]Re-pick up English for learning big data (n ...
随机推荐
- SpringBoot: 浅谈文件上传和访问的坑 (MultiPartFile)
本次的项目环境为 SpringBoot 2.0.4, JDK8.0. 服务器环境为CentOS7.0, Nginx的忘了版本. 前言 SpringBoot使用MultiPartFile接收来自表单的f ...
- git 上传当前分支
因为我现在的分支是的名很长,每次需要上次当前分支需要写很多代码,是不是有很简单方法上传当前分支. 如果要上传一个分支到仓库 origin 那么就需要使用下面的命令 git push origin 分支 ...
- c++ unordered_map 自定义key
C++11新增了一类散列容器包括unordered_set, unordered_map, unordered_multiset, unordered_multimap, 即之前熟悉的hash_set ...
- Google 浏览器设置打开超链接到新窗口标签页
一.windows 按住Ctrl + 鼠标点击,在新窗口打开,停留在当前页面: 按住Ctrl + Shift + 鼠标点击,在新窗口打开,停留在新窗口: 登录Google账号,管理Google账号, ...
- 深入浅出Java并发中的CountDownLatch
1. CountDownLatch 正如每个Java文档所描述的那样,CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行.在Java并发中 ...
- Appium中使用相对路径定位元素Xpath
1.若页面该元素没有ID 2.找出该元素父类,并拷贝出父类的class(类名)和ID 3.点击搜索图标,进行查找 selector内容://android.widget.LinearLayout[@r ...
- mybatis精讲(六)--二级缓存
目录 简介 配置 源码 CachingExecutor 自定义二级缓存 # 加入战队 微信公众号 简介 上一章节我们简单了解了二级缓存的配置.今天我们详细分析下二级缓存以及为什么不建议使用二级缓存. ...
- ABP取其精华
目录 ABP中使用Swagger UI集成接口文档 ABP-AsyncLocal的使用 ABP-多个DbContext实现事物更新 持续更新中.
- java引用类型的浅拷贝与深拷贝理解
1.浅拷贝 只会复制地址值,也就是同一个对象两个引用,只是复制了一个引用而已. 2.深拷贝 重新在堆里创建一个新对象给新引用,连同地址值也不一样. 首先要知道Object的clone()方法, pub ...
- 解决Coursera视频无法观看的三种方法(亲测有效)
最近在coursera上课时出现了视频黑屏,网页缓冲,无法观看等问题,经过查询发现很多人也有同样的问题.对于不同的原因,一般来说解决方法也不同.这里有三种办法,大家可以挨个尝试,肯定有一个 ...