[英]Spring Boot with Cassandra 3.x driver
I use Spring boot 1.3.8.RELEASE
. 我使用Spring Boot 1.3.8.RELEASE
。 To use cassandra 3.x driver i tried something like below; 要使用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>
But i get error; 但是我得到了错误;
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:?]
I tried this cause at https://github.com/spring-projects/spring-boot/issues/5835 , there is a post ; 我在https://github.com/spring-projects/spring-boot/issues/5835尝试过这个原因,有一篇文章;
Adopting the Cassandra 3 changes in Spring Data Cassandra 1.5 (Ingalls) does not impose breaking changes for Spring Boot. 在Spring Data Cassandra 1.5(Ingalls)中采用Cassandra 3更改不会对Spring Boot造成重大更改。 Tested the upgrade with Boot 1.3.3 and 1.4.0-SNAPSHOT. 使用引导1.3.3和1.4.0-SNAPSHOT测试了升级。
Isn't it supposed to be like above? 它不是应该像上面吗? Where i am wrong? 我哪里错了?
NOTE: I was trying this example: https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-data-cassandra 注意:我正在尝试以下示例: https : //github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-data-cassandra
spring-data-cassandra-1.4.0.RELEASE depends on <cassandra.version>2.1.11</cassandra.version>
and <cassandra-driver-dse.version>2.1.7.1</cassandra-driver-dse.version>
see https://github.com/spring-projects/spring-data-cassandra/blob/1.4.0.RELEASE/pom.xml . 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 。
If you want to use Cassandra 3.x you should upgrade to spring-boot 1.5.x to benifit from spring-boot-starter-data-cassandra:1.5.x that depends on <cassandra.version>3.0.0</cassandra.version>
and <cassandra-driver.version>3.0.3</cassandra-driver.version>
see https://github.com/spring-projects/spring-data-cassandra/blob/1.5.0.M1/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
Remove Cassandra driver dependency from pom file. 从pom文件中删除Cassandra驱动程序依赖项。 Spring boot will provide the right version Spring Boot将提供正确的版本
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.