我读了一些关于把javau带回家的评论。因为我是这方面的初学者,我没有在不知道我在做什么的情况下编辑任何东西。我不想把事情搞得更糟。所以,如果你能指导我通过这一点,告诉我什么是我的编码错误,我会非常感谢。
我一直在尝试安装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
这就是 hadoop-env.sh
在其中,我将java\u设置为:
# 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
```
hbase.rootdir
hdfs://localhost:54310 /hbase
这是给 `hbase-env.sh` ```
# The java implementation to use. Java 1.6 required.
# export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-i386
我猜就这些。
6条答案
按热度按时间tvz2xvvm1#
hbase尝试读取hbase-env.sh文件上设置的java\u主目录。
在hbase-env.sh文件中
hbase的默认java\u主页集。
如果您在不同的目录中设置java home,请编辑该行并注解掉它。
它会解决你的问题。
bksxznpy2#
只需修改
hbase-env.sh
这样地:我不知道为什么
/etc/profile
javapath不起作用,但是这种方法可以帮助您。wkyowqbh3#
显然hbase找不到javahome和javabinary,尽管您可以运行
java -version
在当地。你应该跑
export JAVA_HOME=/the/path/of/you/jdk/
在运行hbase之前。顺便说一句,
echo JAVA_HOME JAVA_HOME
不正确。你可能想要echo $JAVA_HOME
.ct3nt3jp4#
如果您已经在~/.bashrc文件中设置了java\u home路径,并且hbase仍然给出相同的错误“java\u home not found”,请在/etc/environment文件中设置java\u home。
我面临这个问题,当我在'/etc/environment'中设置java\u home时,它对我起了作用
f87krz0w5#
您必须设置java home->您可以用两种方法来实现这一点
在~/hbase-0.98.10-hadoop1/conf java\u home='path/to/jave\u home'中的hbase-env.sh中设置路径
或者在sudo execute user$export java\u home='path/to/jave\u home'下的终端中
在OSX(10)上完成,希望这有帮助!
n53p2ov06#
请参考以下内容:
“java需要安装并可用。如果您收到一个错误,指出java没有安装,但它在您的系统上,可能在非标准位置,请编辑conf/hbase-env.sh文件,并修改java\u home设置以指向包含bin/java系统的目录。”
链接是http://hbase.apache.org/book/quickstart.html