我是hadoop和mapreduce的初学者。在我的ubuntuvm上安装hadoop之后,我尝试了一些入门示例,比如wordcount和anagram。
我想做一个 Apriori on MapReduce
. 我在sourceforge找到了这个(http://sourceforge.net/p/apriorimapred/wiki/home/).
在我下载并安装了一些必需的组件之后,比如 HBase
以及 Log4j
(虽然我在安装log4j时遇到了问题,所以我选择通过将level设置为off来禁用它们),
我与这个问题作斗争
"Error: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.HBaseConfiguration" -- as in the picture. (https://dl.dropboxusercontent.com/u/51053996/Pics/hadoop%20classnotfound.jpg)
每次我想运行jar文件时都会发生这种情况。我采取的步骤是
1. javac -cp "$HADOOP_HOME/share/hadoop/mapreduce/hadoop-common-2.0.0-alpha.jar:$HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.0.2-alpha.jar:$HADOOP_HOME/lib/commons-configuration-1.10/*:/usr/local/apache-log4j-1.2.17/log4j-1.2.17.jar:/usr/lib/hbase/hbase-0.94.8/hbase-0.94.8.jar" apriori.java
2. jar -cvf apriori.jar -C . .
3. $HADOOP_HOME/bin/hadoop jar /home/hduser/yarn/hadoop-2.5.1/share/hadoop/mapreduce/apriori.jar apriori /in /out2 /out2c /out2a
(问题发生在我在步骤3中输入命令之后)在步骤1中编译后没有显示任何错误(但是,我尝试了编译,但没有包括 "/usr/lib/hbase/hbase-0.94.8/hbase-0.94.8.jar"
大约有100个错误——所以我猜lib工作得很好)。
我把这个问题坚持了大约两个星期,找不到任何有效的解决办法。我尝试了很多建议,比如修复环境变量,添加一些行 hbase-env.sh
等,这里有一些,我书签他们(但没有解决我的)。
线程“main”java.lang.noclassdeffounderror中出现异常:org/apache/hadoop/hbase/hbaseconfiguration
在java类路径中设置多个jar
原因:java.lang.classnotfoundexception:org.apache.zookeeper.keeperexception
https://archanaschangale.wordpress.com/2013/08/29/installing-apache-hbase-on-ubuntu-for-standalone-mode/
http://www.quora.com/how-do-i-install-hbase-on-ubuntu
非常感谢你的帮助,
spacez公司
4条答案
按热度按时间gblwokeq1#
你可以试着复制
hbase-{vsersion}.jar
从$HBASE_HOME
至$HADOOP_HOME/lib
8mmmxcuj2#
我在nutch2.3.1(gora 0.6.1)中使用hbase-098.8-hadoop2时遇到了相同的错误。在我将下面的行添加到
$NUTCH_ROOT/ivy/ivy.xml
:在官方的nutch2教程中,这是一个gora bug。
sc4hvdpw3#
我已经通过重新安装hadoop和hbase的兼容版本解决了这个问题(我使用的是hadoop2.5.1和hbase 0.98.11)。另外,在hadoop env中添加hadoop和hbase jar的正确类路径。
xpszyzbs4#
至于我,我只是跑了: