2013-04-14 93 views
1

我的Hadoop 1.0.4在我的Ubuntu机器上设置的单个节点群集上运行。Missing Hive Execution Jar:/usr/local/hadoop/hive/lib/hive-exec-*.jar

我做了以下步骤下载并安装蜂箱发布

> svn co http://svn.apache.org/repos/asf/hive/trunk hive  
> cd hive 

我Hadoop的安装文件夹为$ HADOOP_HOME /蜂巢和$ HADOOP_HOME =的/ usr /本地/ Hadoop的。我在/ home/hduser下的.bashrc中同时设置了这两个环境变量,这是我的Hadoop用户,而且也是$ JAVA_HOME。

export HADOOP_HOME=/usr/local/hadoop 

export HIVE_HOME=$HADOOP_HOME/hive 

export JAVA_HOME=/usr/lib/jvm/java-6-openjdk 

我还添加了两个Hadoop和配置单元的bin文件夹在我的$ PATH变量如下

export PATH=$PATH:$HADOOP_HOME/bin  
export PATH=$HIVE_HOME/bin:$PATH 

不过,虽然从CLI运行蜂巢,我收到以下错误。

[email protected]:/usr/local/hadoop/hive$ bin/hive  
Missing Hive Execution Jar: /usr/local/hadoop/hive/lib/hive-exec-*.jar 

我应该下载这个jar并将其添加到/ lib /或是否存在一些我需要配置的特定于配置单元的环境变量。任何建议都会非常有帮助。

回答

2

我解决了自己的问题,但不知道到底发生了什么。

通过遵循我在原始问题中提到的过程,我创建了$ HADOOP_HOME/hive,但它给了我一个缺少的jar错误。

因此,我所做的是:我下载了hive-0.10.0.tar.gz并将其解压缩到$ HADOOP_HOME下。所以新创建的文件夹是$ HADOOP_HOME/hive-0.10.0。

我复制了整批罐子在$ HADOOP_HOME /蜂巢-0.10.0/lib添加到$ HADOOP_HOME /蜂巢/ lib和当我下一次执行,

$ HADOOP_HOME /蜂巢>斌/蜂巢

它的工作!请注意我的$ HIVE_HOME = $ HADOOP_HOME/hive和$ HIVE_HOME/bin被添加到路径中。 希望这可以帮助有人面临类似的问题。

0

试试这个:

export HIVE_HOME=$HADOOP_HOME/hive/build/dist 
export PATH=$HIVE_HOME/bin:$PATH 
+0

但是我在$ HADOOP_HOME/hive/build下没有“dist”文件夹。 hduser @索姆纳特 - 笔记本电脑:在/ usr /本地/ Hadoop的/蜂房/建造$ LS anttasks CLI \t hadoopcore \t常春藤\t metastore SERDE testutils 直线常见HBase的处理程序JDBC \t PDK \t服务 内建的contrib HWI \t \t JEXL \t QL \t垫片 – somnathchakrabarti

0

在我的情况下,设置PATH变量后帮助简单重启。

0

tar文件apache-hive-0.13.1-src.tar.gz有一个缺失的lib文件夹 您可以下载hive-0.12.0.tar.gz并将lib文件夹移动到apache-hive-0.13。 1-src文件夹。 现在配置单元应该工作。

0

只需找到您的hive-exec - *。jar文件夹并创建一个符号链接。

在我的情况

,第一我去使用 “CD /usr/local/Cellar/hive/1.2.1”

蜂巢文件夹,然后运行命令 “LN -s的libexec/lib目录/ lib目录”

0

我有同样的问题,我使用命令“源〜/ .bashrc”

问题已解决!

0

只是想发布什么对我有用(在2017年)。

使用星火2.0.2,我不得不改变我$HIVE_HOME变量(在我的情况,我构成刚刚从我.bash_profile移除变量。

希望这可以帮助其他人。

0

这里是另一个我在2017年为我工作了一段时间。

由于我(初学者)提取Hive tar文件的方式,我发生了这个问题。我从us.apache.org下载了“hive-2.3.0”,并将文件解压到/ usr/local/hive。该jar预计在/ usr/local/hive/lib中,但对于某些reas它位于/ usr/local/hive **/bin/** lib中。换句话说,/ hive下有一个额外的“/ bin”目录,其中包含所有应该直接在/ hive下的文件。我通过将extra/bin目录重命名为“/ bin2”来解决此问题,将所有文件从/ bin2中移动到main/hive目录,并删除不必要的和现在为空的/ bin2目录。一旦.jar文件在正确的目录中,运行Hive就没有问题!这里是我使用的命令:

cd /usr/local 
    mv hive/bin hive/bin2 
    mv hive/bin2/* hive 
    rm -r hive/bin2 
0

我在2017年12月以下做了,它的工作。

    中HADOOP_HOME目录
  1. 在Cygwin的下面有没有

  2. 复制蜂巢:

    export HIVE_HOME=$HADOOP_HOME/hive 
    export PATH=$HIVE_HOME/bin:$PATH 
    
0

的问题是关于蜂巢路径,所以,你可以检查了涉及所有配置文件蜂巢路径。请记住,您必须确认hadoop已安装。

1中,环境参数(/ etc/profile或者〜/或.profile)

export HIVE_HOME=/usr/app/apache-hive-2.3.0-bin 
export PATH=$HIVE_HOME/bin:$PATH 

2,$ HIVE_HOME/CONF/hive-env.sh

export JAVA_HOME= ${Your_JAVA_HOME_directory} 
export HADOOP_HOME= ${Your_HADOOP_HOME_directory} 
export HIVE_HOME= ${Your_HIVE_HOME_directory} 
export HIVE_CONF_DIR= ${Your_HIVE_HOME_directory}/conf 

Hive基于Hadoop,因此您必须在hive-env.sh上配置hadoop的路径。