Мы создаем приложение на основе Spark, используя Spark 2.3.0.Наши рабочие места Spark взаимодействуют с HBase.При создании JAR мы получаем следующее исключение исключения времени компиляции: файл класса [ERROR] для org.apache.spark.Logging not found Это исключение происходит в коде, который читает данные из таблиц HBase.
Мы можем успешно записать данные в таблицы HBase, используя нижеприведенную конфигурацию / версии jar.
Мы используем следующую конфигурацию в pom.xml
<property>
<org.apache.spark.version>2.3.0</org.apache.spark.version>
<scala.version>2.11</scala.version>
<hbase.version>1.0.0-cdh5.4.0</hbase.version>
</property>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_${scala.version}</artifactId>
<version>${org.apache.spark.version}</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_${scala.version}</artifactId>
<version>${org.apache.spark.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-spark</artifactId>
<version>1.2.0-cdh5.10.0</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-client</artifactId>
<version>${hbase.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-common</artifactId>
<version>${hbase.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-server</artifactId>
<version>${hbase.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-protocol</artifactId>
<version>${hbase.version}</version>
</dependency>
<dependency>
<groupId>org.apache.htrace</groupId>
<artifactId>htrace-core</artifactId>
<version>3.1.0-incubating</version>
</dependency>
Мы нашли несколько решений для stackoverflowВсе упоминают использовать Spark 1.6 вместо. java.lang.NoClassDefFoundError: org / apache / spark / Logging
Это невозможно для нас.
Существуют ли другие способы решения этой проблемы?
Спасибо