【问题标题】:zookeeper Starting error :'JAVA_HOME error in zookeeper.out'zookeeper 启动错误:'zookeeper.out 中的 JAVA_HOME 错误'
【发布时间】:2017-01-03 21:24:05
【问题描述】:

当我这样做时

bin/zkServer.sh start    #It shows it has started

ZooKeeper JMX enabled by default
Using config: /data/sparkHA/zookeeper-3.4.9/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

当我检查状态的几秒钟后,我得到了

ZooKeeper JMX enabled by default
Using config: /data/sparkHA/zookeeper-3.4.9/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

我的 zookeeper.out 说

nohup: failed to run command â/usr/bin/java/bin/javaâ: Not a directory

但是我在bashrc中的JAVA_HOME是usr/bin/java,怎么多了一个/bin/java,导致目录无效。

同时回显 $JAVA_HOME 输出

/usr/bin/java

如何处理此错误。请帮忙。谢谢。

还尝试在 zkServer.sh 中设置 JAVA_HOME 也通过关注 Zookeeper not starting, nohup error 但得到相同的错误。

【问题讨论】:

  • /usr/bin 的内容通常是可执行文件,而不是目录(这并不完全正确,但足以达到此目的)。您可能已经在那里安装了 JDK/JRE;要验证,ls -l /usr/bin/java - 如果它是一个目录,请使用该命令的输出更新此问题。如果它是一个文件,那么 Maxim Dobryakov 有正确的答案,你必须找到你的实际 JDK 安装。

标签: java apache-zookeeper


【解决方案1】:

您的JAVA_HOME 指向/usr/bin/java 文件,但它应该指向您的JDK 的根目录。例如对我来说这是:

➜  ~ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home
➜  ~ ll $JAVA_HOME
total 52064
-rw-rw-r--   1 root  wheel   3.2K Oct  1 09:00 COPYRIGHT
-rw-rw-r--   1 root  wheel    40B Oct  1 09:01 LICENSE
-rw-rw-r--   1 root  wheel   159B Oct  1 09:01 README.html
-rwxrwxr-x   1 root  wheel   108K Sep 22 22:49 THIRDPARTYLICENSEREADME-JAVAFX.txt
-rw-rw-r--   1 root  wheel   173K Oct  1 09:01 THIRDPARTYLICENSEREADME.txt
drwxrwxr-x  46 root  wheel   1.5K Oct  1 09:04 bin
drwxrwxr-x   9 root  wheel   306B Oct  1 09:00 db
drwxrwxr-x   9 root  wheel   306B Oct  1 09:00 include
-rwxrwxr-x   1 root  wheel   4.9M Sep 22 22:49 javafx-src.zip
drwxrwxr-x  10 root  wheel   340B Oct  1 09:02 jre
drwxrwxr-x  14 root  wheel   476B Oct  1 09:02 lib
drwxrwxr-x   5 root  wheel   170B Oct  1 09:01 man
-rw-rw-r--   1 root  wheel   529B Oct  1 09:01 release
-rw-rw-r--   1 root  wheel    20M Oct  1 09:01 src.zip

所以,尝试设置 JDK 根目录的有效路径。我认为它应该可以解决您的问题。

【讨论】:

  • 啊..是的,我的应该是 /usr/java/jdk1.8.0...谢谢...现在可以使用了。
猜你喜欢
  • 2014-01-14
  • 2020-10-07
  • 1970-01-01
  • 1970-01-01
  • 2020-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多