Hive源码上手及问题解决
2024-10-19 10:32:43
一、编译准备
1.下载源码包
https://github.com/apache/hive/archive/refs/tags/rel/release-2.3.7.zip
或使用git直接拉取
无法解决科学问题请点
2.环境
JDK 1.8.0_202
Apache Maven 3.6.3
git 2.32.0 (编译过程需要执行bash,cmd会报错)
二、执行操作与主要问题
1.操作
在已经解压过的Hive源码包下启动git bash 运行一下代码
mvn clean package -Phadoop-2,dist
这是官网给出的编译语句,根据基于的hadoop版本填入数字
mvn clean package -Phadoop-2 -DskipTests
跳过测试
mvn -Phadoop-2 -Pdist -DskipTests -Dmaven.javadoc.skip=true clean package
在上面的基础上跳过文档生成
如果显示Hadoop依赖问题报错可以去掉hadoop项 mvn clean package -Pdist -DskipTests
2.主要问题
(1).pentaho-aggdesigner-algorithm:jar缺失
这个问题基本编译Hive的都会遇到,根本原因是阿里云镜像jar包索引不明,按照其它方法提供的更改POM文件中spring镜像仓库依然无法下载jar包,最终手动下载安装成功
mvn install:install-file -DgroupId=org.pentaho -DartifactId=pentaho-aggdesigner-algorithm -Dversion=5.1.5-jhyde -Dpackaging=jar -Dfile=pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar(jar绝对路径)
(2).Java环境问题
经过几次测试结合其他总结经验发现,JDK验证(java -version,javac,java)都正常的情况依然会有类似报错
可以在执行编译语句前设置JDK路径(很多时候mvn默认是JRE)set JAVA_HOME=你的JDK绝对路径
解决上述问题基本就编译成功
在同等的环境下使用linux(ubuntu和CentOS)编译均不会出现win下的各种环境问题
直接使用IDE编译可能会出现更多JAR包问题,如果仅仅只是Hive的框架依赖如Hadoop_HOME和Druid_HOME,则不影响测试
如果不需要对整个Hive测试,可以仅编译单个组件。例如:ql[hive-exec]、llap-common
最新文章
- ReactNative入门(安卓)——API(上)
- selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口)
- Redis-cluster集群【第四篇】:redis-cluster集群配置
- SQL Server 2012 自动增长列,值跳跃问题
- 【前台页面 BUG】回车按钮后,页面自动跳转
- 【转】Struts1.x系列教程(4):标签库概述与安装
- Codeforces Round #229 (Div. 2) D
- 【Spark】---- Spark 硬件配置
- qt 屏幕旋转
- JAVA 显示图片的简单源码 分类: Java Game 2014-08-14 10:10 77人阅读 评论(0) 收藏
- 在C语言环境下使用google protobuf
- [Effective C++ --031]将文件间的编译依存关系降至最低
- MFC定时器
- 拓展:switch实现
- Senparc.Weixin.MP SDK 微信公众平台开发教程(一):微信公众平台注册
- Raspberry Pi + 3个USB摄像头 + Motion(简易监控设备配置记录1——介绍以及安装) 分类: Raspberry Pi 服务器搭建 2015-04-12 19:21 226人阅读 评论(0) 收藏
- ZooKeeper应用理论及其应用场景
- flex盒模型 详细解析
- 996.icu,不加班的程序员有前途吗?
- mac 环境搭建