当我按照geomesa手册将样本数据摄入hbase时,会抛出此错误:
未加载以下变量 /media/svr3/geomesa/geomesa-hbase_2.11-1.3.4/conf/geomesa-env.sh到期 到现有配置。 HADOOP_HOME, HADOOP_CONF_DIR, HADOOP_COMMON_HOME, HADOOP_HDFS_HOME, YARN_HOME, HADOOP_MAPRED_HOME, ZOOKEEPER_HOME 拿起JAVA_TOOL_OPTIONS:-Dgeomesa.hbase.coprocessor.path = hdfs://hbase/lib/geomesa-hbase-distributed-runtime_2.11-1.3.4.jar 2018年4月19日上午8:19:28 org.geotools.data.DataAccessFinder getDataStore
WARNING: HBase (GeoMesa) should be used, but could not connect
> java.io.IOException: java.lang.reflect.InvocationTargetException
> at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:240)
> at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:218)
> at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:119)
> at org.apache.hadoop.hbase.client.HBaseAdmin.checkHBaseAvailable(HBaseAdmin.java:3140)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.checkClusterAvailability(HBaseDataStoreFactory.scala:99)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.org$locationtech$geomesa$hbase$data$HBaseDataStoreFactory$$globalConnection$lzycompute(HBaseDataStoreFactory.scala:44)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.org$locationtech$geomesa$hbase$data$HBaseDataStoreFactory$$globalConnection(HBaseDataStoreFactory.scala:41)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory$$anonfun$2.apply(HBaseDataStoreFactory.scala:61)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory$$anonfun$2.apply(HBaseDataStoreFactory.scala:61)
> at scala.Option.getOrElse(Option.scala:121)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.createDataStore(HBaseDataStoreFactory.scala:61)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.createDataStore(HBaseDataStoreFactory.scala:36)
> at org.geotools.data.DataAccessFinder.getDataStore(DataAccessFinder.java:130)
> at org.geotools.data.DataStoreFinder.getDataStore(DataStoreFinder.java:89)
> at org.locationtech.geomesa.tools.ingest.AbstractIngest.<init>(AbstractIngest.scala:72)
> at org.locationtech.geomesa.tools.ingest.ConverterIngest.<init>(ConverterIngest.scala:43)
> at org.locationtech.geomesa.tools.ingest.IngestCommand$class.createConverterIngest(IngestCommand.scala:64)
> at org.locationtech.geomesa.hbase.tools.ingest.HBaseIngestCommand.createConverterIngest(HBaseIngestCommand.scala:21)
> at org.locationtech.geomesa.tools.ingest.IngestCommand$class.execute(IngestCommand.scala:57)
> at org.locationtech.geomesa.hbase.tools.ingest.HBaseIngestCommand.execute(HBaseIngestCommand.scala:21)
> at org.locationtech.geomesa.tools.Runner$class.main(Runner.scala:28)
> at org.locationtech.geomesa.hbase.tools.HBaseRunner$.main(HBaseRunner.scala:21)
> at org.locationtech.geomesa.hbase.tools.HBaseRunner.main(HBaseRunner.scala)
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:238)
> ... 22 more
> Caused by: java.lang.NoSuchMethodError: org.apache.hadoop.tracing.TraceUtils.wrapHadoopConf(Ljava/lang/String;Lorg/apache/hadoop/conf/Configuration;)Lorg/apache/htrace/core/HTraceConfiguration;
> at org.apache.hadoop.fs.FsTracer.get(FsTracer.java:42)
> at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:696)
> at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:680)
> at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:158)
> at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2669)
> at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:94)
> at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2703)
> at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2685)
> at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:373)
> at org.apache.hadoop.fs.Path.getFileSystem(Path.java:295)
> at org.apache.hadoop.hbase.util.DynamicClassLoader.initTempDir(DynamicClassLoader.java:120)
> at org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:98)
> at org.apache.hadoop.hbase.protobuf.ProtobufUtil.<clinit>(ProtobufUtil.java:244)
> at org.apache.hadoop.hbase.ClusterId.parseFrom(ClusterId.java:64)
> at org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:75)
> at org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:105)
> at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.retrieveClusterId(ConnectionManager.java:905)
> at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.<init>(ConnectionManager.java:648)
> ... 27 more
>
> ERROR java.lang.reflect.InvocationTargetException
> java.io.IOException: java.lang.reflect.InvocationTargetException
> at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:240)
> at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:218)
> at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:119)
> at org.apache.hadoop.hbase.client.HBaseAdmin.checkHBaseAvailable(HBaseAdmin.java:3140)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.checkClusterAvailability(HBaseDataStoreFactory.scala:99)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.org$locationtech$geomesa$hbase$data$HBaseDataStoreFactory$$globalConnection$lzycompute(HBaseDataStoreFactory.scala:44)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.org$locationtech$geomesa$hbase$data$HBaseDataStoreFactory$$globalConnection(HBaseDataStoreFactory.scala:41)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory$$anonfun$2.apply(HBaseDataStoreFactory.scala:61)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory$$anonfun$2.apply(HBaseDataStoreFactory.scala:61)
> at scala.Option.getOrElse(Option.scala:121)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.createDataStore(HBaseDataStoreFactory.scala:61)
> at org.locationtech.geomesa.hbase.data.HBaseDataStoreFactory.createDataStore(HBaseDataStoreFactory.scala:36)
> at org.geotools.data.DataAccessFinder.getDataStore(DataAccessFinder.java:130)
> at org.geotools.data.DataStoreFinder.getDataStore(DataStoreFinder.java:89)
> at org.locationtech.geomesa.tools.ingest.AbstractIngest.<init>(AbstractIngest.scala:72)
> at org.locationtech.geomesa.tools.ingest.ConverterIngest.<init>(ConverterIngest.scala:43)
> at org.locationtech.geomesa.tools.ingest.IngestCommand$class.createConverterIngest(IngestCommand.scala:64)
> at org.locationtech.geomesa.hbase.tools.ingest.HBaseIngestCommand.createConverterIngest(HBaseIngestCommand.scala:21)
> at org.locationtech.geomesa.tools.ingest.IngestCommand$class.execute(IngestCommand.scala:57)
> at org.locationtech.geomesa.hbase.tools.ingest.HBaseIngestCommand.execute(HBaseIngestCommand.scala:21)
> at org.locationtech.geomesa.tools.Runner$class.main(Runner.scala:28)
> at org.locationtech.geomesa.hbase.tools.HBaseRunner$.main(HBaseRunner.scala:21)
> at org.locationtech.geomesa.hbase.tools.HBaseRunner.main(HBaseRunner.scala)
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:238)
> ... 22 more
> Caused by: java.lang.NoSuchMethodError: org.apache.hadoop.tracing.TraceUtils.wrapHadoopConf(Ljava/lang/String;Lorg/apache/hadoop/conf/Configuration;)Lorg/apache/htrace/core/HTraceConfiguration;
> at org.apache.hadoop.fs.FsTracer.get(FsTracer.java:42)
> at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:696)
> at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:680)
> at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:158)
> at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2669)
> at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:94)
> at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2703)
> at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2685)
> at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:373)
> at org.apache.hadoop.fs.Path.getFileSystem(Path.java:295)
> at org.apache.hadoop.hbase.util.DynamicClassLoader.initTempDir(DynamicClassLoader.java:120)
> at org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:98)
> at org.apache.hadoop.hbase.protobuf.ProtobufUtil.<clinit>(ProtobufUtil.java:244)
> at org.apache.hadoop.hbase.ClusterId.parseFrom(ClusterId.java:64)
> at org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:75)
> at org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:105)
> at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.retrieveClusterId(ConnectionManager.java:905)
> at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.<init>(ConnectionManager.java:648)
> ... 27 more
如何解决此错误?