linux下编译Hive 源码并导入eclipse中(使用maven)

本文详细介绍了如何从源码编译Hive 2.0.0版本的过程,包括使用Maven替代Ant进行编译的原因及具体步骤,并解决了编译后在Eclipse中遇到的常见问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.下载hive源码

官网下载
我下载的hive-2.0.0版本的。

2.使用maven编译。

一开始我要使用的是ant进行编译的,可是我的源码目录下没有build.xml文件,只有pom.xml文件,这使得我在使用ant编译的时候总是会报这样的错:

Buildfile: build.xml does not exist!
Build failed

上网查了好多方法,最终却无功而返;只能想其他方法。
突然感觉pom.xml 怎么那么眼熟,以前建的maven 工程中也都有个pom.xml文件么,这时我就上网查了一下关于maven编译的方法:
1.首先下载maven:

sudo apt-get install maven

2.开始编译Hive,进入下载的hive源码文件加 目录 命令行输入:

mvn clean install -DskipTests -Phadoop-2

3.清空相关的输出:

mvn eclipse:clean

4.编译成eclipse工程(此过程比较慢我进行了将近一个小时才完成):

mvn eclipse:eclipse -DdownloadSources -DdownloadJavadocs -Phadoop-2

3.编译成功后就可以直接导入到eclipse中了

直接直接选中编译完后的hive源码文件夹 import 导入到eclipse中就可以:
import -> General -> existing projects into workspase -> Browse… -> 选中编译完后的hive源码文件夹 -> finish
导入到工作空间之后回报错:(如图)
这里写图片描述
这时problems标签下会出现4969个错误:(如图)
这里写图片描述
这里最主要的错误是

Unbound classpath variable: 'M2_REPO/**/***/***.jar' 

说是classpath变量的jar包找不到了,其实这些jar包是存在在我们的maven本地库中的,本地库默认位置在用户目录下的.m2文件夹下(隐藏文件使用Ctrl+h显示)关联一下即可,具体步骤:
Eclipse->Windows->Preferences->java->Build Path->Classpath Variables
这里写图片描述
new一个,名字当然是M2_REPO,属性选folder,导入本地库即可
这里写图片描述
错误解决!
这里写图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值