如何将 Spring 的 Cassandra Java 驱动程序 3.11.3 升级到 4.0.0?

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

我应该将我的 Cassandra 版本升级到 4.0.0,但每当我这样做时,我都会遇到这样的许多问题:

error: error: cannot access TypeCodec,
error: cannot find symbol

并且它无法在存储库中找到我的自动装配和注入的模拟。在升级版本时,我遇到了很多类似的问题,似乎不可能升级相同的问题。 我尝试通过降级阿基里斯核心来解决这个问题,但这对我来说也不起作用。

分享较小版本的 POM,有人可以帮我升级版本而不遇到很多问题吗?我的项目也使用 spring 版本 4.0。

<dependency>
        <groupId>info.archinnov</groupId>
        <artifactId>achilles-core</artifactId>
        <version>${achilles.version}</version>
        <exclusions>
            <exclusion>
                <artifactId>cassandra-driver-core</artifactId>
                <groupId>com.datastax.cassandra</groupId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>com.datastax.cassandra</groupId>
        <artifactId>cassandra-driver-core</artifactId>
        <version>4.0.0</version>
    </dependency>
spring cassandra upgrade cassandra-3.0 datastax-java-driver
1个回答
0
投票

Cassandra Java 驱动程序已在 4.0.0 中完全重新设计,它与旧版本的驱动程序不具有二进制兼容性,因此您需要重构您的应用程序。

例如,

Cluster
Session
对象不再存在,已被
CqlSession
取代。同样,大多数配置项现在都是基于文件的。

为了回应上面@Andrew的评论,我们不建议升级到4.0.0,因为它太旧了(于2019年发布)。我们建议升级到最新版本(撰写本文时为v4.18.1)以获得最新的修补版本。

有关详细升级说明,请参阅Cassandra Java驱动程序升级指南Spring Data Cassandra迁移指南。干杯!

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