类文件中的常量池数据不一致

问题描述 投票:0回答:1

我正在尝试使用spark cassandra连接器从表中获取值。 load()产生IncompatibleClassChangeError。我的开发环境定义如下,Intellij:2019.3.2Scala版本:2.12.10Scala二进制版本:2.12Spark版本:2.4.4Spark cassandra连接器:2.4.2 Exception in thread "main" java.lang.IncompatibleClassChangeError: Inconsistent constant pool data in classfile for class com/datastax/spark/connector/cql/StructDef. Method 'java.lang.Object $anonfun$missingColumns$1$adapted(com.datastax.spark.connector.cql.StructDef, com.datastax.spark.connector.ColumnRef)' at index 182 is CONSTANT_MethodRef and should be CONSTANT_InterfaceMethodRef 哪个库创建了异常?

scala apache-spark spark-cassandra-connector intellij-14
1个回答
0
投票

从Cassandra 3.11切换到Cassandra 3.0为我解决了这个问题。

spark-casandra-connector的官方github项目还提到它仅支持Spark Cassandra连接器2.4.2的Cassandra版本3.0。(https://github.com/datastax/spark-cassandra-connector)。

我的工作设置:

IntelliJ:2019.13.3社区版

Java:openjdk 13.0.2

火花版本:2.4.5

Spark cassandra连接器:2.4.2

Cassandra:3.0.8(托管在Docker容器:https://hub.docker.com/_/cassandra中]

© www.soinside.com 2019 - 2024. All rights reserved.