HBase Java API HTrace错误

HBase Java API HTrace错误,java,hadoop,hbase,cloudera,Java,Hadoop,Hbase,Cloudera,我想创建一个JavaAPI来访问HBase数据库,但在我的项目中,我总是面临这个错误 15/12/14 20:34:22 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=192.168.34.184:2181,192.168.34.173:2181 sessionTimeout=90000 watcher=hconnection-0xa80e050x0, quorum=192.168.34.184:218

我想创建一个JavaAPI来访问HBase数据库,但在我的项目中,我总是面临这个错误

15/12/14 20:34:22 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=192.168.34.184:2181,192.168.34.173:2181 sessionTimeout=90000 watcher=hconnection-0xa80e050x0, quorum=192.168.34.184:2181,192.168.34.173:2181, baseZNode=/hbase
15/12/14 20:34:22 INFO zookeeper.ClientCnxn: Opening socket connection to server /192.168.34.184:2181
java.io.IOException: java.lang.reflect.InvocationTargetException
    at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:240)
    at org.apache.hadoop.hbase.client.ConnectionManager.createConnection(ConnectionManager.java:420)
    at org.apache.hadoop.hbase.client.ConnectionManager.createConnection(ConnectionManager.java:413)
    at org.apache.hadoop.hbase.client.ConnectionManager.getConnectionInternal(ConnectionManager.java:291)
    at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:222)
    at api.ClientOperations.creatTable(ClientOperations.java:69)
    at api.ClientOperations.main(ClientOperations.java:125)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:238)
    ... 6 more
Caused by: java.lang.NoClassDefFoundError: org/apache/htrace/Trace
    at org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.exists(RecoverableZooKeeper.java:217)
    at org.apache.hadoop.hbase.zookeeper.ZKUtil.checkExists(ZKUtil.java:541)
    at org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:65)
    at org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:105)
    at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.retrieveClusterId(ConnectionManager.java:879)
    at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.<init>(ConnectionManager.java:635)
    ... 11 more
Caused by: java.lang.ClassNotFoundException: org.apache.htrace.Trace
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
15/12/14 20:34:22信息zookeeper.zookeeper:启动客户端连接,connectString=192.168.34.184:2181192.168.34.173:2181 sessionTimeout=90000 watcher=hconnection-0xa80e050x0,quorum=192.168.34.184:2181192.168.34.173:2181,baseZNode=/hbase
15/12/14 20:34:22信息zookeeper.ClientCnxn:打开到服务器的套接字连接/192.168.34.184:2181
java.io.IOException:java.lang.reflect.InvocationTargetException
位于org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:240)
位于org.apache.hadoop.hbase.client.ConnectionManager.createConnection(ConnectionManager.java:420)
位于org.apache.hadoop.hbase.client.ConnectionManager.createConnection(ConnectionManager.java:413)
位于org.apache.hadoop.hbase.client.ConnectionManager.getConnectionInternal(ConnectionManager.java:291)
位于org.apache.hadoop.hbase.client.HBaseAdmin.(HBaseAdmin.java:222)
在api.ClientOperations.createTable(ClientOperations.java:69)
位于api.ClientOperations.main(ClientOperations.java:125)
原因:java.lang.reflect.InvocationTargetException
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(未知源)
位于sun.reflect.delegatingConstructor或AccessorImpl.newInstance(未知源)
位于java.lang.reflect.Constructor.newInstance(未知源)
位于org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:238)
... 还有6个
原因:java.lang.NoClassDefFoundError:org/apache/htrace/Trace
位于org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.exists(RecoverableZooKeeper.java:217)
位于org.apache.hadoop.hbase.zookeeper.ZKUtil.checkExists(ZKUtil.java:541)
位于org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:65)
位于org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:105)
位于org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.retrieveClusterId(ConnectionManager.java:879)
位于org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation(ConnectionManager.java:635)
... 还有11个
原因:java.lang.ClassNotFoundException:org.apache.htrace.Trace
位于java.net.URLClassLoader$1.run(未知源)
位于java.net.URLClassLoader$1.run(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.net.URLClassLoader.findClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于sun.misc.Launcher$AppClassLoader.loadClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
但是我在我的项目中添加了HTrace jar

HBase版本:1.1.2


Hadoop版本:2.6.0

您需要将正确的jar文件添加到项目中,将htrace-core-3.1.0 jar文件添加到项目类路径中,然后运行它。


org.apache.htrace
htrace磁芯
3.1.0-孵化
<dependency>
   <groupId>org.apache.htrace</groupId>
   <artifactId>htrace-core</artifactId>
   <version>3.1.0-incubating</version>
</dependency>