2013-04-14 94 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的路徑。