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

来源:互联网 发布:杭州认知网络 编辑:程序博客网 时间:2024/05/23 13:36

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,导入本地库即可
这里写图片描述
错误解决!
这里写图片描述

0 0