1

我在配置HBase的时候遇到了这个bug,我认为bug在:

distMode=`$bin/hbase --config "$HBASE_CONF_DIR" org.apache.hadoop.hbase.util.HBaseConfTool hbase.cluster.distributed`

所以我将echo "alert(4)"头部添加到hbase,但我找不到alert(4)

开始-hbase.sh(片段)

echo "alert(1)"

#start hbase daemons
errCode=$?
if [ $errCode -ne 0 ]
then
  exit $errCode
fi

echo "alert(1.5)"
echo $HBASE_CONF_DIR
echo org.apache.hadoop.hbase.util.HBaseConfTool
echo hbase.cluster.distributed

distMode=`$bin/hbase --config "$HBASE_CONF_DIR" org.apache.hadoop.hbase.util.HBaseConfTool hbase.cluster.distributed`

echo "alert(2)"
echo $distMode

系统打印

bob1@master:~$ hbase-0.94.0/bin/start-hbase.sh 
START_JAVA_HOME
alert(1)
alert(1.5)
/home/bob1/hbase-0.94.0/conf
org.apache.hadoop.hbase.util.HBaseConfTool
hbase.cluster.distributed
Exception in thread "main" java.lang.NoClassDefFoundError: /usr/lib/jvm/java-6-sun-1/6/0/24
Caused by: java.lang.ClassNotFoundException: .usr.lib.jvm.java-6-sun-1.6.0.24
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: /usr/lib/jvm/java-6-sun-1.6.0.24.  Program will exit.
alert(2)
4

3 回答 3

1

导出 HBASE_HOME=/PATH_TO_INSTALL/hbase-0.95.2-hadoop2/

在启动 HBase 之前

于 2013-10-01T10:06:32.750 回答
0

请检查您的 /home/bob1/hbase-0.94.0/conf/hbase-env.sh 文件。

它具有以下选项来为您的 HBase 环境设置 JAVA_HOME。

# The java implementation to use. Java 1.6 required. export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.24

还要在 .profile 文件中设置 JAVA_HOME。

于 2012-10-04T10:14:38.730 回答
-1

尝试配置您的默认 jdk。

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java/jdk1.6.0_16/bin/java 300 //the second param is the java path of jdk you setup and want to use
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java/jdk1.6.0_16/bin/javac 300
sudo update-alternatives --config java 
sudo update-alternatives --config javac 

按照说明选择一个 jdk 作为默认值。

于 2012-09-30T05:44:45.943 回答