分享

java操作hbase报错

jyz123456 发表于 2016-8-25 14:54:53 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 2 15298
今天又在尝试使用java操作hbase,然后,疯狂报错,只好来求助了
环境搭建 虚拟机里面hadoop2.7.2+hbase0.98.20,使用hbase shell能正常使用
win7环境下用的myeclipse10.5
导入了hbase解压的jar,然后复制了java代码进来,运行的时候报错

-08-25 14:47:00,095 WARN [org.apache.hadoop.util.NativeCodeLoader] - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Exception in thread "main" java.io.IOException: java.lang.reflect.InvocationTargetException
        at org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:465)
        at org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:442)
        at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:323)
        at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:191)
        at www.aboutyun.com.hbase.OperateTable.main(OperateTable.java:19)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:463)
        ... 4 more
Caused by: java.lang.ExceptionInInitializerError
        at org.apache.hadoop.hbase.ClusterId.parseFrom(ClusterId.java:64)
        at org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:69)
        at org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:83)
        at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.retrieveClusterId(HConnectionManager.java:926)
        at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.<init>(HConnectionManager.java:711)
        ... 9 more
Caused by: java.lang.RuntimeException: Failed to create local dir file:\usr\local\hbase\hbase-0.98.20-hadoop2\tmp\local\jars, DynamicClassLoader failed to init
        at org.apache.hadoop.hbase.util.DynamicClassLoader.initTempDir(DynamicClassLoader.java:108)
        at org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:98)
        at org.apache.hadoop.hbase.protobuf.ProtobufUtil.<clinit>(ProtobufUtil.java:221)
        ... 14 more


这个问题到底是为啥呢,我在win7下解压的也是hadoop2.7.2

已有(2)人评论

跳转到指定楼层
langke93 发表于 2016-8-25 16:44:41
hadoop版本太新了。
可能版本不兼容。最好使用稳定版本

推荐相关例子参考:
hbase开发环境搭建及运行hbase小实例(HBase 0.98.3新api)

hbase编程:Eclipse远程连接创建hbase表以及填充列与列数据

版本兼容参考推荐:
hadoop,hbase,hive,zookeeper版本整合兼容性最全,最详细说明【适用于任何版本】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=18015


回复

使用道具 举报

jyz123456 发表于 2016-8-25 16:51:03
感谢回答,公司里面封锁apache,具体下载只好回家再搞,谢谢了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条