Я пробовал разъем hbase-spark. Для начала я пробую этот код.
Мои зависимости pom:
<dependencies>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_2.11</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-spark</artifactId>
<version>2.0.0-alpha4</version>
</dependency>
</dependencies>
Я получаю следующее исключение при выполнении кода:
Исключение в потоке "main" java.lang.NoClassDefFoundError: org / apache / spark / Logging
в java.lang.ClassLoader.defineClass1 (собственный метод)
в java.lang.ClassLoader.defineClass (ClassLoader.java:760)
в java.security.SecureClassLoader.defineClass (SecureClassLoader.java:142)
в java.net.URLClassLoader.defineClass (URLClassLoader.java:467)
на java.net.URLClassLoader.access $ 100 (URLClassLoader.java:73)
на java.net.URLClassLoader $ 1.run (URLClassLoader.java:368)
на java.net.URLClassLoader $ 1.run (URLClassLoader.java:362)
at java.security.AccessController.doPrivileged (собственный метод)
на java.net.URLClassLoader.findClass (URLClassLoader.java:361)
в java.lang.ClassLoader.loadClass (ClassLoader.java:424)
at sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:331)
в java.lang.ClassLoader.loadClass (ClassLoader.java:357)
в org.apache.hadoop.hbase.spark.JavaHBaseContext. (JavaHBaseContext.scala: 46)
в com.myproj.poc.sparkhbaseneo4j.App.main (App.java:71)
Вызывается: java.lang.ClassNotFoundException: org.apache.spark.Logging
на java.net.URLClassLoader.findClass (URLClassLoader.java:381)
в java.lang.ClassLoader.loadClass (ClassLoader.java:424)
at sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:331)
в java.lang.ClassLoader.loadClass (ClassLoader.java:357)
... еще 14
com.myproj.poc.sparkhbaseneo4j.App.main(App.java:71)
- это строка 67 в коде github.
Я проверил эту тему . Это говорит о том, что я должен включать одинаковые версии всех библиотек. Раньше в моем ПОМе были версии 2.3.0 библиотек spark. Но я понял, что hbase-spark
имеет последнюю версию 2.0.0
. Поэтому я понизил версии всех свечных библиотек до 2.0.0
. Но я все еще получаю то же исключение.
Или я должен придерживаться 1.X.X
версий только для использования этого, так как этот ответ говорит, что он был удален после версии 1.5.2?