簡體   English   中英

使用Cassandra 3.x驅動程序的Spring Boot

[英]Spring Boot with Cassandra 3.x driver

我使用Spring Boot 1.3.8.RELEASE 要使用cassandra 3.x驅動程序,我嘗試了如下操作:

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-cassandra</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-cassandra</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-cassandra</artifactId>
        <version>1.4.0.RELEASE</version>
        <exclusions>
            <exclusion>
                <groupId>com.datastax.cassandra</groupId>
                <artifactId>cassandra-driver-core</artifactId>
            </exclusion>
            <exclusion>
                <groupId>com.datastax.cassandra</groupId>
                <artifactId>cassandra-driver-dse</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.datastax.cassandra/cassandra-driver-core -->
    <dependency>
        <groupId>com.datastax.cassandra</groupId>
        <artifactId>cassandra-driver-core</artifactId>
        <version>3.1.0</version>
    </dependency>

但是我得到了錯誤;

Caused by: java.lang.NoSuchMethodError: com.datastax.driver.core.DataType.asJavaClass()Ljava/lang/Class;
at org.springframework.data.cassandra.mapping.CassandraSimpleTypeHolder.<clinit>(CassandraSimpleTypeHolder.java:62) ~[spring-data-cassandra-1.4.0.RELEASE.jar:?]

我在https://github.com/spring-projects/spring-boot/issues/5835嘗試過這個原因,有一篇文章;

在Spring Data Cassandra 1.5(Ingalls)中采用Cassandra 3更改不會對Spring Boot造成重大更改。 使用引導1.3.3和1.4.0-SNAPSHOT測試了升級。

它不是應該像上面嗎? 我哪里錯了?

注意:我正在嘗試以下示例: https : //github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-data-cassandra

spring-data-cassandra-1.4.0.RELEASE取決於<cassandra.version>2.1.11</cassandra.version><cassandra-driver-dse.version>2.1.7.1</cassandra-driver-dse.version>參見https://github.com/spring-projects/spring-data-cassandra/blob/1.4.0.RELEASE/pom.xml

如果要使用Cassandra 3.x,則應升級到spring-boot 1.5.x,以從依賴於<cassandra.version>3.0.0</cassandra.version> spring-boot-starter-data-cassandra:1.5.x中<cassandra.version>3.0.0</cassandra.version><cassandra-driver.version>3.0.3</cassandra-driver.version>參見https://github.com/spring-projects/spring-data-cassandra/blob/1.5.0.M1/pom。 XML

從pom文件中刪除Cassandra驅動程序依賴項。 Spring Boot將提供正確的版本

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM