NoClassDefFoundError-用于Cassandra的datastax java驱动程序
我目前无法使用datastax驱动程序连接到我的cassandra数据库。我得到以下错误:NoClassDefFoundError-用于Cassandra的datastax java驱动程序,cassandra,pom.xml,noclassdeffounderror,datastax-java-driver,Cassandra,Pom.xml,Noclassdeffounderror,Datastax Java Driver,我目前无法使用datastax驱动程序连接到我的cassandra数据库。我得到以下错误: com.datastax.driver.core.TransportException: [/127.0.0.1] Unexpected exception triggered (java.lang.NoSuchMethodError: com.google.common.collect.ImmutableSet.copyOf(Ljava/util/Collection;)Lcom/google/comm
com.datastax.driver.core.TransportException: [/127.0.0.1] Unexpected exception triggered (java.lang.NoSuchMethodError: com.google.common.collect.ImmutableSet.copyOf(Ljava/util/Collection;)Lcom/google/common/collect/ImmutableSet;)
at com.datastax.driver.core.Connection$Dispatcher.exceptionCaught(Connection.java:556)
at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:122)
Caused by: java.lang.NoSuchMethodError: com.google.common.collect.ImmutableSet.copyOf(Ljava/util/Collection;)Lcom/google/common/collect/ImmutableSet;
at com.datastax.driver.core.DataType.<clinit>(DataType.java:144)
at com.datastax.driver.core.Codec.<clinit>(Codec.java:31)
完整的pom.xml:
我缺少依赖项了吗?根据《卡桑德拉驱动核心》的1.0.4版使用了Guava的14.0.1版,而不是15.0版。我猜你看到了版本冲突。即使版本差异不是导致此问题的原因,也可能导致其他问题
您通常不需要在POM中包含可传递依赖项,Maven会为您处理这些依赖项。或者您自己的代码是否使用番石榴本身?基于此问题的建议: 我不得不排除google collections jar:
<dependency>
<groupId>org.zkoss.zk</groupId>
<artifactId>zkspring-core</artifactId>
<version>3.1</version>
<exclusions>
<exclusion>
<groupId>com.google.collections</groupId>
<artifactId>google-collections</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.zkoss.zk</groupId>
<artifactId>zkspring-core</artifactId>
<version>3.1</version>
<exclusions>
<exclusion>
<groupId>com.google.collections</groupId>
<artifactId>google-collections</artifactId>
</exclusion>
</exclusions>
</dependency>