Начиная HBASE, java.lang.ClassNotFoundException: org.apache.htrace.SamplerBuilder - PullRequest
0 голосов
/ 01 ноября 2018

Я пытаюсь запустить HBASE с start-hbase.sh, однако я получаю ошибку: java.lang.ClassNotFoundException: org.apache.htrace.SamplerBuilder.

Я пытался добавить различные .jar в разные папки (как это предлагается в других темах), но ничего не работает. Я использую Hadoop 3.11 и HBase 2.10 Вот (конец) журнала ошибок.

java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster. 
    at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2972)
    at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:236)
    at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:140)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
    at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:149)
    at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2983)
Caused by: java.lang.NoClassDefFoundError: org/apache/htrace/SamplerBuilder
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:635)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:619)
    at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:149)
    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.CommonFSUtils.getRootDir(CommonFSUtils.java:358)
    at org.apache.hadoop.hbase.util.CommonFSUtils.isValidWALRootDir(CommonFSUtils.java:407)
    at org.apache.hadoop.hbase.util.CommonFSUtils.getWALRootDir(CommonFSUtils.java:383)
    at org.apache.hadoop.hbase.regionserver.HRegionServer.initializeFileSystem(HRegionServer.java:691)
    at org.apache.hadoop.hbase.regionserver.HRegionServer.<init>(HRegionServer.java:600)
    at org.apache.hadoop.hbase.master.HMaster.<init>(HMaster.java:484)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:488)
    at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2965)
    ... 5 more
Caused by: java.lang.ClassNotFoundException: org.apache.htrace.SamplerBuilder
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
    ... 25 more

Ответы [ 3 ]

0 голосов
/ 28 декабря 2018

В выпуске HBase 2.1.0 используется HTrace, то есть инкубационный проект Apache Foundation.

В папке HBase lib есть папка для сторонних библиотек, client-facing-thirdparty. Вам нужно скопировать htrace-core-3.1.0-incubating.jar оттуда в каталог HBase lib. (см. Ссылку)

Существует также другое решение на Cloudera Community , которое изменяет конфигурацию вместо добавления библиотеки вручную.

0 голосов
/ 24 мая 2019

HBase 2.1.4 не имеет htrace-core-3.1.0-incubating.jar in client-facing-thirdparty

Вам нужно скопировать с 2.1.3 или скачать с https://mvnrepository.com/artifact/org.apache.htrace/htrace-core

0 голосов
/ 05 ноября 2018

Кажется, что была проблема совместимости между Hbase и Hadoop, я вернулся к использованию Hadoop 2.9.1 и Hbase 1.2.6 вместе с JDK 1.8.0

...