我已经阅读了一些关于设置 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 未设置且无法找到 java 的错误
这是我尝试启动 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
这就是我的猜测。
最佳答案
显然 HBase 找不到 JAVA_HOME 和 java 二进制文件,尽管您可以在本地运行 java -version。
在运行 HBase 之前,您应该运行 export JAVA_HOME=/the/path/of/you/jdk/。
BTY,echo JAVA_HOME JAVA_HOME 不正确。您可能需要 echo $JAVA_HOME。
关于java - (HBase) 错误 : JAVA_HOME is not set and Java could not be found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21116916/