Эта проблема похожа на:
Что происходит - NoSuchMethodError: com.datastax.driver.core.ResultSet.fetchMoreResults
Всякий раз, когда я пытаюсь запросить таблицу Кассандры, она всегда выдает мне следующую ошибку:
java.lang.NoSuchMethodError: com.datastax.driver.core.ResultSet.fetchMoreResults()Lshade/com/datastax/spark/connector/google/common/util/concurrent/ListenableFuture;
at com.datastax.spark.connector.rdd.reader.PrefetchingResultSetIterator.maybePrefetch(PrefetchingResultSetIterator.scala:26) ~[spark-cassandra-connector_2.11-2.0.8.jar!/:2.0.8]
at com.datastax.spark.connector.rdd.reader.PrefetchingResultSetIterator.next(PrefetchingResultSetIterator.scala:39) ~[spark-cassandra-connector_2.11-2.0.8.jar!/:2.0.8]
at com.datastax.spark.connector.rdd.reader.PrefetchingResultSetIterator.next(PrefetchingResultSetIterator.scala:17) ~[spark-cassandra-connector_2.11-2.0.8.jar!/:2.0.8]
Поскольку класс ResultSet присутствует как в ядре cassandra-driver-core, так и в spark-cassandra-разъем.
Предыдущие сообщения предлагают удалить jar-ядро cassandra-driver-core, поскольку оно конфликтует со встроенным драйвером искрового-cassandra-разъема.
Вот решения, которые я пробовал до сих пор:
- удаление зависимости cassandra-driver-core от pom
- исключая ядро cassandra-driver из зависимости искрового-cassandra-разъема, используя
<dependency>
<groupId>com.datastax.spark</groupId>
<artifactId>spark-cassandra-connector_2.11</artifactId>
<version>2.0.8</version>
<exclusions>
<exclusion>
<groupId>com.datastax.cassandra</groupId>
<artifactId>cassandra-driver-core</artifactId>
</exclusion>
</exclusions>
</dependency>
но ни один из них не работал, каждый раз, когда я перестраиваю свой код, снова появляется jar-файл cassandra-driver-core и выдает ту же ошибку.
Я также пытался удалить его вручную из jar проекта, но затем проект не может подключиться к базе данных cassandra.
Есть ли решение этого конфликта зависимостей.
Любая помощь очень ценится. Заранее спасибо!