windows下编译hive

小编使用的环境

  • windows10
  • apache-maven,版本:3.5.0
  • jdk8
  • cygwin,版本:1.7.35-1

cygwin说明

1.因为编译hive时会调用shell,windows本身不支持运行shell,引入cygwin可以模拟类UNIX环境。

2.从官方渠道安装cygwin时需要保持一个好网速,否则可能会多次安装失败,安装完后会有几个G,安装时间可能会有大半天。
《windows下编译hive》 cygwin64.png

3.非官方渠道上下cygwin离线包安装很快,但很多资源是垃圾资源安装不成功或安装了不能用,找资源时多看评论,小编是15年时安装的,链接当时没保存,本文中没能提供。

在cmd下开始编译

1.切换到源码目录
cd D:\bigdata\apache-hive-2.1.1-src

其目录结构如图

《windows下编译hive》 源码路径

2. 添加CYGWIN到当前cmd窗口的环境变量中(如果已在系统环境变量里设置了,此步骤跳过)。
set CYGWIN_HOME=I:\cygwin64
set path=%path%;%CYGWIN_HOME%\bin
3.开始编译Hive
mvn clean install -DskipTests -Phadoop-2
4.编译成功界面如下

《windows下编译hive》 编译成功的界面

故障排查

问题1:cygwin没有安装好或者环境变量有问题
报错如图 《windows下编译hive》 cygwin问题
检查方法

cmd下进入cygwin的bin目录运行如下几个命令

   cygcheck -c cygwin
   gcc -v
   g++  --version
   make –version
   gdb –version
   ps
   ls

出现如图说明cygwin安装成功,然后去检查环境变量配置,否则说明安装失败。

《windows下编译hive》 检查cygwin

问题2:maven编译过程中JVM内存溢出
报错如图 《windows下编译hive》 JVM内存溢出
解决方法

修改源码根目录下的pom.xml

添加

   <fork>true</fork>
   <meminitial>512m</meminitial>
   <maxmem>1024m</maxmem>

到如图位置

《windows下编译hive》 pom.xml

    原文作者:zhanghuang
    原文地址: https://www.jianshu.com/p/63acc1e5d6bc
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞