自己编译flink

自己编译flink的环境:Linux、git、maven、jdk8以上。

获取flink源代码:git clone https://github.com/apache/flink.git

  克隆flink项目到本地,下载会等一会。

  

 

  下载完成之后:

  

 

进入对应版本的分支

  git tag 查看分支;git checkout release-1.9.2 进入release-1.9.2分支

  

 

  此时我们用IDEA打开这个flink项目,右下角会发现分支为:一串奇怪的字符串,其实是分支的编号,即上图中位于后的字符串,如图所示。 

  

 

编译flink

  确保进入flink项目目录。

  命令:mvn clean install -Dmaven.test.skip=true 跳过测试

  命令:mvn clean install -Dmaven.test.skip=true -Dfast 跳过测试、QA插件、javadoc以加速构建,默认会将Hadoop2的支持打包进去

  针对指定版本的Hadoop版本mvn clean install -Dmaven.test.skip=true -DHadoop.version=2.6.1

    这里指定支持Hadoop2.6.1,你得确保你有这个版本的hadoop。

  针对指定的Hadoop发行版编译flink:

    命令:mvn clean install -Dmaven.test.skip=true -Pvendor-repos -DHadoop.version=2.6.1-cdh5.0.0

    你可以使用命令行参数激活prom.xml中profile标签的配置。

  如果用户主目录是加密的,可能会报错:java.io.IOException:File name too long exception。比如ubantu系统的encfs文件系统。那么那个模块报的错就修改哪个模块的配置文件,如:flink-yarn模块报的错,则在它的prom.xml文件中的scala-maven-plugin的configuration标签下添加:

<args>
    <arg>Xmax-classfile-name</arg>
    <arg>128</arg>
</args>

编译flink报错汇总

  

  

 

   

  

 

 

  

 

  

 

posted @ 2020-04-23 23:07  巴蜀秀才  阅读(1407)  评论(0编辑  收藏  举报