web-dev-qa-db-ja.com

(HBase)エラー:Java_HOMEが設定されておらず、Javaが見つかりませんでした

Java_HOMEの設定に関するコメントをいくつか読みました。私は初心者なので、自分が何をしているのかを知らずに何も編集しませんでした。これ以上物事を台無しにしたくなかった。ですから、これについて私を導き、私のコーディングの何が問題なのかを教えていただければ、本当にありがたいです。

HadoopをインストールしてからHBaseをインストールしようとしています。多くの困難とエラー解決の後、最終的にHadoopをインストールし、start-all.shを実行したときにこの出力を取得でき、すべてが正常であるように見えました。

> hduser@CSLAP106:~$ /usr/local/hadoop/bin/start-all.sh

> hduser@CSLAP106:~$ jps

> 3005 NameNode

> 3404 JobTracker

> 5570 Jps

> 3554 TaskTracker

> 3311 SecondaryNameNode

これもJavaバージョンで、echo Java_HOMEと入力すると、次の出力が得られます。

> hduser@CSLAP106:~$ Java -version 
> 
> Java version "1.7.0_25" OpenJDK Runtime Environment (IcedTea 2.3.12)
> (7u25-2.3.12-4ubuntu3)   OpenJDK Server VM (build 23.7-b01, mixed
> mode) 
> hduser@CSLAP106:~$ echo Java_HOME Java_HOME

この後、HBase(あきらめようとしていると思います)をインストールしようとしましたが、常にJava_HOME is not set and Java cannot be foundというエラーが表示されます。

これは私がHbaseを起動しようとしたものです:

hduser@CSLAP106:~$ /usr/local/hbase/hbase-0.94.6.1/bin/start-hbase.sh
+======================================================================+
|      Error: Java_HOME is not set and Java could not be found         |
+----------------------------------------------------------------------+
| Please download the latest Sun JDK from the Sun Java web site        |
|       > http://Java.Sun.com/javase/downloads/ <                      |
|                                                                      |
| HBase requires Java 1.6 or later.                                    |
| NOTE: This script will find Sun Java whether you install using the   |
|       binary or the RPM based installer.                             |
+======================================================================+

また、このディレクトリ/usr/local/hbase/hbase-0.94.6.1/binをチェックして、Java)を認識するかどうかを確認します。

Strackoverflowと同じ問題に対する他の人の回答を検索した後、それらを.xmlファイルと.shファイルに適用しようとしましたが、何も起こりませんでした。

HADOOPの場合

これは、Java_HOMEを設定したhadoop-env.shです。

# The Java implementation to use.  Required.
export Java_HOME=/usr/lib/jvm/Java-7-openjdk-i386

これはmy $HOME/.bashrcの編集です:

# Set Hadoop-related environment variables
export HADOOP_HOME=/usr/local/hadoop

export Java_HOME=/usr/lib/jvm/Java-1.7.0-openjdk-i386

# Add Hadoop bin/ directory to PATH

export PATH=$PATH:$HADOOP_HOME/bin

HBaseの場合

これらは私がhbase-site.xmlで行った編集です

<property>
        <name>hbase.rootdir</name>
    <value>hdfs://localhost:54310 /hbase</value>
</property>

これはhbase-env.sh用です

# The Java implementation to use.  Java 1.6 required.
# export Java_HOME=/usr/lib/jvm/Java-1.7.0-openjdk-i386

これが私が推測するすべてです。

10
Nazanin

どうやらHBaseはJava_HOMEとJavaバイナリを見つけることができませんでしたが、Java -versionをローカルで実行できます。

HBaseを実行する前に、export Java_HOME=/the/path/of/you/jdk/を実行する必要があります。

BTY、echo Java_HOME Java_HOMEが正しくありません。 echo $Java_HOMEが必要な場合があります。

4
tobe

Hbaseは、hbase-env.shファイルに設定されているJava_HOMEディレクトリを読み取ろうとします。

Hbase-env.shファイル内

export Java_HOME=/usr/Java/jdk1.6.0/ is set and commented.

Hbaseに設定されたデフォルトのJava_HOME。

Java homeを別のディレクトリに設定する場合は、行を編集してコメントアウトしてください。

それはあなたの問題を解決します。

3
Rakib

以下を参照してください。

「Javaをインストールして使用可能にする必要があります。Javaがインストールされていないが、システム上、おそらく非標準の場所にあることを示すエラーが発生した場合は、conf/hbaseを編集してください-env.shファイルを作成し、Java_HOME設定を変更して、システムのbin/Javaを含むディレクトリを指すようにします。」

リンクは http://hbase.Apache.org/book/quickstart.html

1
user3093893

hbase-env.shを次のように変更するだけです。

export Java_HOME=/your/Java/path

/etc/profile Javaパスが機能しない理由はわかりませんが、この方法が役立ちます。

1
s_jaewoo

〜/ .bashrcファイルにJava_HOMEパスをすでに設定していて、それでもHbaseが「Java_HOMEが見つかりません」という同じエラーを表示する場合は、/ etc/environmentファイルにJava_HOMEを設定します。

私はこの問題に直面し、Java_HOMEを「/ etc/environment」に設定するとうまくいきました

1
Amit baderia

Java home->これを2つの方法で行うことができます

〜/ hbase-0.98.10-hadoop1/confのhbase-env.shにパスを設定しますJava_HOME = 'PATH/TO/JAVE_HOME'

または、Sudoの下のターミナルでuser $ export Java_HOME = 'PATH/TO/JAVE_HOME'を実行します。

OS X(10)で実行できます。

0
BenB