Hive源码解析环境搭建
一、准备工作
1.1 下载地址
https://github.com/apache/hive
https://dlcdn.apache.org/hive/
版本:2.3.9
1.2 环境依赖
hadoop2.x
mysql
maven
java8
1.3 Idea插件
需要在idea中搜索安装ANTLR插件
二、本地编译运行
2.1 编译
mvn clean package -DskipTests -Pdist
2.2 配置hive,前提是其他环境已经配置好
参考安装hive博客
2.3 hive配置客户端debug模式
bin/hive --debug -hiveconf hive.root.logger=DEBUG,console
当开启debug模式时,JVM会监听8000端口,等待客户端调试连接,我们需要在IDE配置debug的远程端口连接上去。
2.4 开启调试
IntelliJ -> Open -> pom.xml of hive source -> Run -> Debug… -> Edit Configurations… -> + -> Remote

当我们配置好Name、Host、Port后,点击debug,则此时会连接localhost的8000端口,真正开启 hive cli,对应的源码入口是 org.apache.hadoop.hive.cli.CliDriver#main,待hive cli启动成功后,可以输入hql进行代码调试了。
其它:
参考文献
hive本地环境搭建:https://qingzhongli.com/hive-source-read-local-env-setup/
Idea安装antlr插件: https://cloud.tencent.com/developer/article/1556983

Hive源码解析环境搭建的更多相关文章
- 渣渣菜鸡的 ElasticSearch 源码解析 —— 环境搭建
关注我 转载请务必注明原创地址为:http://www.54tianzhisheng.cn/2018/08/25/es-code01/ 软件环境 1.Intellij Idea:2018.2版本 2. ...
- Spark源码分析环境搭建
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3868718.html 本文主要分享一下如何构建Spark源码分析环境.以前主要使用eclipse来阅读源 ...
- 【转】Linux(ubuntu14.04)上编译Android4.4源码的环境搭建及编译全过程
原文网址:http://jileniao.net/linux-android-building.html sublime text让我伤心.本来很信任sublime text的自动保存功能,之前使用一 ...
- 基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建
基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建 作者:Awesome 日期:2017-10-21 需准备的软件工具 Ardupilot飞控源码 PX4 toolchain JAVA ...
- Hadoop源码阅读环境搭建(IDEA)
拿到一份Hadoop源码之后,经常关注的两件事情就是 1.怎么阅读?涉及IDEA和Eclipse工程搭建.IDEA搭建,选择源码,逐步导入即可:Eclipse可以选择后台生成工程,也可以选择IDE导入 ...
- Hive源码解析
date: 2020-07-08 15:12:00 updated: 2020-08-21 17:38:00 Hive源码解析 入口:hive-cli-1.1.0-cdh5.14.4.jar!/org ...
- Cesium源码阅读环境搭建
1. 引言 Cesium是一款三维地球和地图可视化开源JavaScript库,使用WebGL来进行硬件加速图形,使用时不需要任何插件支持,基于Apache2.0许可的开源程序,可以免费用于商业和非商业 ...
- Spring5源码阅读环境搭建-gradle构建编译
前沿:Spring系列生态十分丰富,涉及到各个方面.但是作为Spring生态的核心基础Spring,是最重要的环节,需要理解Spring的设计原理,我们需要解读源码. 在构建Spring源码阅 ...
- 深入理解Tomcat系列之二:源码调试环境搭建(转)
前言 最近对Tomcat的源码比较感兴趣,于是折腾了一番.要调试源码首先需要搭建环境,由于参考了几篇帖子发现都不怎么靠谱,最后还是折腾出来了,然而却花了足足一天的时间去搭建这个环境.发现都不是帖子的问 ...
- Dubbo源码学习--环境搭建及基础准备(ServiceLoader、ExtensionLoader)
环境搭建 Github上下载Dubbo最新发布版本,楼主下载版本为2.5.7. cd到源码解压目录,maven编译,命令为: mvn clean install -Dmaven.test.skip 生 ...
随机推荐
- 解决window.close()在谷歌浏览器不起作用
简单明了直接上解决方法: let url = ' '; // 空字符串中间要加空格 window.open(url, '_self').close();
- Win10使用SSH反向隧道(端口转发)连接远程桌面
应用场景: 如果你有Linux云主机(腾讯.华为等),且公司有一台只有内网IP (或动态IP) 的Win10工作机:你计划在家里工作时,通过家里的电脑连接公司的工作机 (且不想使用类似Teamview ...
- BUU get_started_3dsctf_2016
先checksec一下 32位程序,没开PIE,再观察一下主函数 gets函数有可能是栈溢出,再观察一下后门函数 方法一: 考虑栈溢出后直接跳转到if判断后面的语句,进而跳过if条件判断 from p ...
- ClickHouse 物化视图学习总结
物化视图 物化视图源表--基础数据源 创建源表,因为我们的目标涉及报告聚合数据而不是单条记录,所以我们可以解析它,将信息传递给物化视图,并丢弃实际传入的数据.这符合我们的目标并节省了存储空间,因此我们 ...
- 解密prompt系列44. RAG探索模式?深度思考模式?
前一阵多步RAG的风吹入了工业界,kimi推出了探索版本,各应用都推出了深度搜索,You.COM更是早就有了Genius的多步模式.其实都是类似multi-hop RAG的实现.之前学术界在讨论mul ...
- Fleck:一个轻量级的C#开源WebSocket服务端库
推荐一个简单易用.轻量级的C#开源WebSocket服务端库,方便我们快速实现WebSocket的开发. 01 项目简介 Fleck 是一个用 C# 编写的轻量级 WebSocket 服务器库.它提供 ...
- AlertManager警报通知 使用webhook 钉钉机器人
# AlertManager警报通知 使用webhook 钉钉机器人 #启动钉钉webhook服务 #dingtalk webhook docker rm -f dingtalk docker run ...
- 构建模块化 CLI:Lerna + Commander 打造灵活的基础脚手架
在现代软件开发中,创建 定制化的命令行工具(CLI) 已成为满足公司业务需求的关键一环.这类工具可以辅助执行诸如代码检查.项目初始化等任务.为了提高开发效率并简化维护过程,我们将功能模块化,并通过多个 ...
- 【C#】【平时作业】习题-2-数据类型运算符表达式
目录 1.请设计程序,验证算数运算符和赋值运算符. Int a,b,c C=a+b += privatevoid button1_Click(object sender, EventArgse) { ...
- swagger 文件上传以及requestbody参数传递
swagger用来做普通的API测试很方便,在实际开发过程中,经常会有文件上传,或者通过reuestbody传递数据等方式. 这个时候swagger的配置就有一些特殊了 . swagger reque ...