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,安装时间可能会有大半天。
cygwin64.png

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



在cmd下开始编译

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

其目录结构如图

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



故障排查

问题1:cygwin没有安装好或者环境变量有问题
报错如图
cygwin问题
检查方法

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

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



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

检查cygwin



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

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

添加

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

到如图位置


pom.xml
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容