无法连接 Hbase shell
Can't connect Hbase shell
我已经在 Mac OS X 10.11.6 上安装了 Hbase 1.2.6 仅用于独立测试目的。
我已经配置了 hbase-site.xml
和 hbase-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 目前不支持Java9。
https://issues.apache.org/jira/browse/HBASE-12081
尝试在 hbase-env
中设置不同的 JAVA_HOME
问题是 Java 9,Java 8 脚本工作正常。
我已经安装了 Java 8 并更改了 conf/hbase-env.sh
中的 JAVA_HOME
变量
根据 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*')"
我已经在 Mac OS X 10.11.6 上安装了 Hbase 1.2.6 仅用于独立测试目的。
我已经配置了 hbase-site.xml
和 hbase-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 目前不支持Java9。
https://issues.apache.org/jira/browse/HBASE-12081
尝试在 hbase-env
JAVA_HOME
问题是 Java 9,Java 8 脚本工作正常。
我已经安装了 Java 8 并更改了 conf/hbase-env.sh
JAVA_HOME
变量
根据 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*')"