Flink 1.10源代码编译,基于Flink release-1.10分支

3 篇文章 0 订阅
2 篇文章 0 订阅

Flink编译部署

Flink源代码编译部署

构建准备:

  • [Ubuntu 18 安装] Linux衍生系统

  • [Python 2.X系列版本] Flink-release10专门用到的基础环境,和flink-runtime-web模块构建相关

  • [Java 1.8+ 版本安装] Java环境

  • [Maven 3.3+ 版本安装]

    • 编译构建工具,最好在构建maven环境时将maven运行的XmxXms参数适当调大
    • 在Maven settings.xml中配置阿里的maven仓库地址,可加速依赖下载速度.
    • 注意!!! 最好将配置好的settings.xml同时放到/home/username/.m2/路径下一份
        <mirrors>
         <mirror>
             <id>nexus-aliyun</id>
             <mirrorOf>central</mirrorOf>
             <name>Nexus aliyun</name>
             <url>http://maven.aliyun.com/nexus/content/groups/public</url>
         </mirror>
    
         <mirror>
             <id>nexus-aliyun-apache</id>
             <mirrorOf>central</mirrorOf>
             <name>Nexus aliyun apache</name>
             <url>http://maven.aliyun.com/nexus/content/repositories/apache-snapshots/</url>
         </mirror>
     
         <mirror>
             <id>nexus-aliyun</id>
             <mirrorOf>*,!jeecg,!jeecg-snapshots,!mapr-releases</mirrorOf>
             <name>Nexus aliyun</name>
             <url>http://maven.aliyun.com/nexus/content/groups/public</url>
         </mirror>
     
         <mirror>
             <id>mapr-public</id>
             <mirrorOf>mapr-releases</mirrorOf>
             <name>mapr-releases</name>
             <url>https://maven.aliyun.com/repository/mapr-public</url>
         </mirror>
     </mirrors>
    
    
    
    
  • [Git安装] 代码管理

  • [IntelliJ Idea安装] 阅读源代码和远程调试使用

开始构建

  • 创建工作目录: mkdir flink_code_location
    创建一个目录作为Flink源代码下载目录,比如flink_code_location
  • [flink] 项目仓库fork到自己的github
  • 切换到工作目录:cd flink_code_location,
    从自己的github中pull flink的源代码,git clone git@github.com:${username}/flink.git
  • 分支准备:进入flink代码目录,cd flink;
    切换到flink-1.10f分支,git checkout release-1.10
    从此分支构建自己的分支,git checkout -b your_branch_base_release-1.10
  • 执行编译:mvn clean install -T 2C -Dfast -Dmaven.compile.fork=true -DskipTests -Dscala-2.11
  • 参数说明
       mvn \
       #清理往次的maven构建记录和结果
       clean  \
       #安装/打包
       install  \

       #支持多处理器或者处理器核数参数,加快构建速度,推荐Maven3.3及以上
       -T 2C \ 
       
       #在flink根目录下pom.xml文件中fast配置项目中含快速设置,其中包含了多项构建时的跳过参数.
       #例如apache的文件头(rat)合法校验,代码风格检查,javadoc生成的跳过等,详细可阅读pom.xml
       -Dfast \         
        #官方文档中声明有预构建完成的几个版本,可参考官方文档.本地版调试学习如果不涉及到state的文件系统存储持久化则不需要开启此配置项
       -Pinclude-hadoop -Dhadoop.version=2.7.5 \
        
       #允许多线程编译,推荐maven在3.3及以上
       -Dmaven.compile.fork=true \
       
       -DskipTests \ #之所以不开启-Dmaven.test.skip=true而使用此选项时因为如果要完整构建flink项目,
       #其中flink-test*模块中的代码非test范围,而其中使用了flink-runtime中test代码构建,
       # 所以如果不在根目录pom.xml中注释掉flink-test*模块,使用此选项会报错找不到相关包或者类
       
       -Dscala-2.11  #制定flink的scala版本代码

  • 根据官方文档声明,maven3.3+需要执行shade依赖的maven命令cd flink-dist/ && mvn clean install,(个人测试,不执行此步骤对本地方式的集群启动无影响)

编译结果

  • 编译成功以后可用的flink文件夹资源在flink/build-target文件夹下

集群本地模式启动

  • 启动集群本地模式
    • cd build-target/flink-*-bin/*/
    • ./start-cluster.sh
    • 在本地浏览器访问Flink_WebUI,提交flink任务测试即可。

Thanks…

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值