【问题标题】:Can't connect Hbase shell无法连接 Hbase shell
【发布时间】:2018-07-06 08:56:05
【问题描述】:

我在 Mac OS X 10.11.6 上安装了 Hbase 1.2.6 只是为了进行独立测试。 我已经配置了hbase-site.xmlhbase-env.sh。 给出命令./hbase shell 启动shell 我遇到以下错误

    $ bin/hbase  shell
Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.jruby.java.invokers.RubyToJavaInvoker (file:/Users/user/Hbase/Hb126/lib/jruby-complete-1.6.8.jar) to method java.lang.Object.registerNatives()
WARNING: Please consider reporting this to the maintainers of org.jruby.java.invokers.RubyToJavaInvoker
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
ArgumentError: wrong number of arguments (0 for 1)
  method_added at file:/Users/user/Hbase/Hb126/lib/jruby-complete-1.6.8.jar!/builtin/javasupport/core_ext/object.rb:10
  method_added at file:/Users/user/Hbase/Hb126/lib/jruby-complete-1.6.8.jar!/builtin/javasupport/core_ext/object.rb:129
       Pattern at file:/Users/user/Hbase/Hb126/lib/jruby-complete-1.6.8.jar!/builtin/java/java.util.regex.rb:2
        (root) at file:/Users/user/Hbase/Hb126/lib/jruby-complete-1.6.8.jar!/builtin/java/java.util.regex.rb:1
       require at org/jruby/RubyKernel.java:1062
        (root) at file:/Users/user/Hbase/Hb126/lib/jruby-complete-1.6.8.jar!/builtin/java/java.util.regex.rb:42
        (root) at /Users/user/Hbase/Hb126/bin/../bin/hirb.rb:38

Java 版本:

java 9.0.4
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)

Jruby 版本:

jruby 9.1.15.0 (2.3.3) 2017-12-07 929fde8 Java HotSpot(TM) 64-Bit Server VM 9.0.4+11 on 9.0.4+11 +jit [darwin-x86_64]

有什么帮助吗?

【问题讨论】:

  • hbase 版本:源代码存储库文件://home/busbey/projects/hbase/hbase-assembly/target/hbase-1.2.6 revision=Unknown
  • 您是否尝试过其他 Java 版本?
  • 是的,使用 Java 8 就可以了!非常感谢!

标签: java hbase


【解决方案1】:

根据this SO 回答,将/usr/local/Cellar/hbase/1.2.6/libexec/conf/hbase-env 中的JAVA_HOME 更改为

export JAVA_HOME="$(/usr/libexec/java_home -v '1.8*')"

【讨论】:

    【解决方案2】:

    问题是 Java 9,在 Java 8 中脚本可以正常工作。 我已经安装了 Java 8 并更改了 conf/hbase-env.sh 中的 JAVA_HOME 变量

    【讨论】:

      【解决方案3】:

      Hbase 目前不支持 Java 9。

      https://issues.apache.org/jira/browse/HBASE-12081

      尝试在hbase-env 中设置不同的JAVA_HOME

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-03-17
        • 2017-02-13
        • 2014-12-04
        • 2016-11-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多