我应该将我的 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>
Cassandra Java 驱动程序已在 4.0.0 中完全重新设计,它与旧版本的驱动程序不具有二进制兼容性,因此您需要重构您的应用程序。
例如,
Cluster
和Session
对象不再存在,已被CqlSession
取代。同样,大多数配置项现在都是基于文件的。
为了回应上面@Andrew的评论,我们不建议升级到4.0.0,因为它太旧了(于2019年发布)。我们建议升级到最新版本(撰写本文时为v4.18.1)以获得最新的修补版本。
有关详细升级说明,请参阅Cassandra Java驱动程序升级指南和Spring Data Cassandra迁移指南。干杯!