首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NoClassDefFoundError - datastax驱动程序

NoClassDefFoundError - datastax驱动程序
EN

Stack Overflow用户
提问于 2013-11-04 12:56:07
回答 2查看 4.2K关注 0票数 1

我目前无法使用datastax驱动程序连接到cassandra数据库。我得到了以下错误:

代码语言:javascript
复制
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中包括了pom.xml伪制品如下:

代码语言:javascript
复制
<!-- Datastax driver -->

    <dependency>
        <groupId>com.datastax.cassandra</groupId>
        <artifactId>cassandra-driver-core</artifactId>
        <version>1.0.4</version>
    </dependency>

    <!-- Cassandra -->
    <dependency>
        <groupId>org.apache.cassandra</groupId>
        <artifactId>cassandra-all</artifactId>
        <version>1.2.9</version>
    </dependency>

    <!-- guava --<
    <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>15.0</version>
    </dependency>

Full pom.xmlhttp://pastebin.ubuntu.com/6358603/

我失去了依赖吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-04 15:02:04

基于这个问题的建议:没有这样的方法错误: ImmutableList.copyOf()

我不得不排除google集合jar:

代码语言:javascript
复制
    <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>
票数 0
EN

Stack Overflow用户

发布于 2013-11-04 13:35:49

根据其POM,1.0.4版的cassandra-driver-core使用的是14.0.1版的番石榴,而不是15.0版。我猜你看到的是版本冲突。即使版本差异不是造成此问题的原因,它也可能导致其他问题。

您通常不需要在POMs中包含传递依赖项,Maven会为您处理这些依赖关系。还是您自己的代码使用番石榴本身?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19768169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档