Hbase java.lang.NoClassDefFoundError:org / apache / hadoop / hbase / MasterNotRunningException

时间:2016-04-18 07:21:49

标签: java hadoop hbase

我正在使用

运行我的hbase程序
  

java -classpath run.jar com.mycompany.app.HBaseImporter test2   /家庭/ rahulko /下载/我的应用程序内/的Xaa

我在hadoop.env.sh中指定了HADOOP_CLASSPATH,就像这样

 for f in $HADOOP_HOME/contrib/capacity-scheduler/*.jar; do
 if [ "$HADOOP_CLASSPATH" ]; then
 export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$f
 else
 export HADOOP_CLASSPATH=$f
 fi
 done


export HADOOP_CLASSPATH="$HBASE_HOME/lib/hbase-client-0.98.18-hadoop2.jar:\
$HBASE_HOME/lib/hbase-common-0.98.18-hadoop2.jar:\
$HBASE_HOME/lib/protobuf-java-2.5.0.jar:\
$HBASE_HOME/lib/guava-12.0.1.jar:\
$HBASE_HOME/lib/zookeeper-3.4.6.jar:\
$HBASE_HOME/lib/hbase-protocol-0.98.18-hadoop2.jar"

我也在bashrc中指定了

export CLASSPATH=$CLASSPATH:/usr/local/hbase1/lib/*:/usr/local/hadoop/share/hadoop/common/*

但我仍然得到java.lang.NoClassDefFoundError:org / apache / hadoop / hbase / MasterNotRunningException

但是当我从eclipse运行时程序运行成功

2 个答案:

答案 0 :(得分:0)

使用

解决它
  

java -cp“run.jar:/ usr / local / hbase1 / lib / *”   com.mycompany.app.HBaseImporter test2   /家庭/ rahulko /下载/我的应用程序内/的Xaa

答案 1 :(得分:0)

mkdir和libs一样,把你的家属jar放到这个

并运行此命令:

java -Djava.ext.dirs = / xxx / xxx / libs -jar / xxx / xxx / you program jar

可以自动使用dependents jar