微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在mac上Flink1.9.0源码编译使用yhadoop2.6.0-cdh5.15.1

源码编译安装flink

前置条件:
JDK8
Maven3
(jdk 和 maven 请自行搜索,谢谢!)

通过下载Flink源码进行编译,不是使用直接下载二进制包
Flink GitHub 地址
在releases中找到自己需要的版本。我用的是1.9.0版本:1.9.0

tar -zxvf flink-release-1.9.0.tar.gz [-C 可以指定需要放置的目录]

Flink源码文件包内容


如要在其他第三方厂家使用flink 打包,例如要在cdh ,Hortonworks 平台上使用,我们需要指定hadoop 版本进行打包。那么要先对flink 的前置依赖 flink-shaded-hadoop-2 进行打包,再进行编译。

1、在解压出来的flink源码目录下新建一个目录,从git上获取flink-shaded 的源码

git clone https://github.com/apache/flink-shaded.git

根据自己缺少的版本切换对应的代码分支,这里我缺少的是7.0版本的flink-shaded-hadoop-2

git checkout  release-7.0

修改flink-shaded项目中的pom.xml 这里修改是为了加入cdh 等中央仓库,否则编译对应版本可能找不到cdh 相关的包。
在pom.xml文件中的添加

<profile>
	<id>vendor-repos</id>
	<activation>
		<property>
			<name>vendor-repos</name>
		</property>
	</activation>
	<!-- Add vendor maven repositories -->
	<repositories>
		<!-- Cloudera -->
		<repository>
			<id>cloudera-releases</id>
			<url>https://repository.cloudera.com/artifactory/cloudera-repos</url>
			<releases>
				<enabled>true</enabled>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>
		<!-- Hortonworks -->
		<repository>
			<id>HDPReleases</id>
			<name>HDP Releases</name>
			<url>https://repo.hortonworks.com/content/repositories/releases/</url>
			<snapshots><enabled>false</enabled></snapshots>
			<releases><enabled>true</enabled></releases>
		</repository>
		<repository>
			<id>HortonworksJettyHadoop</id>
			<name>HDP Jetty</name>
			<url>https://repo.hortonworks.com/content/repositories/jetty-hadoop</url>
			<snapshots><enabled>false</enabled></snapshots>
			<releases><enabled>true</enabled></releases>
		</repository>
		<!-- MapR -->
		<repository>
			<id>mapr-releases</id>
			<url>https://repository.mapr.com/maven/</url>
			<snapshots><enabled>false</enabled></snapshots>
			<releases><enabled>true</enabled></releases>
		</repository>
	</repositories>
</profile>

然后选择自己需要的CDH版本进行编译 flink-shaded-hadoop-2【要进去包含pom文件的那一层去执行下面的命令去编译哦!】

mvn  clean install -DskipTests -drat.skip=true -Pvendor-repos  -Dhadoop.version=2.6.0-cdh5.15.1

如果您能看到下图代表flink-shaded-hadoop-2编译ok了。【但是Flink咱们还没开始编译呢】

在这里插入图片描述


接下来就是拿FLink开刀了
为什么要加上Dfast:To speed up the build you can skip tests, QA plugins, and JavaDocs

mvn clean install -DskipTests -Pvendor-repos -Dfast 
					-Dhadoop.version=2.6.0-cdh5.15.1

正在编译安装Flink


第一次编译是需要花费很长时间的,因为需要去中央仓库下载flink源码中所有的依赖包,请耐心等待呀!

如果大家有什么好的学习意见欢迎交流呀,谢谢大家!

需要梦想丶 发布了10 篇原创文章 · 获赞 3 · 访问量 124 私信 关注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐