Java 冬眠ogm-';卡桑德拉"实验"';没有有效的数据存储提供程序短名称
我刚刚为多个数据库编写了一个测试程序。 它基于hibernate vor关系数据库和hibernate ogm for NoSQL数据库 目前我支持mysql、postgresql和MongoDB。 现在我想试用cassandra驱动程序,但我得到了一个错误:Java 冬眠ogm-';卡桑德拉"实验"';没有有效的数据存储提供程序短名称,java,cassandra,hibernate-ogm,Java,Cassandra,Hibernate Ogm,我刚刚为多个数据库编写了一个测试程序。 它基于hibernate vor关系数据库和hibernate ogm for NoSQL数据库 目前我支持mysql、postgresql和MongoDB。 现在我想试用cassandra驱动程序,但我得到了一个错误: “cassandra_”不是有效的数据存储提供程序短名称。有效值为:MAP、INFINISPAN、EHCACHE、MONGODB、NEO4J_EMBEDDED、COUCHDB_EXPERIMENTAL 我的maven项目中的依赖项列表:
“cassandra_”不是有效的数据存储提供程序短名称。有效值为:MAP、INFINISPAN、EHCACHE、MONGODB、NEO4J_EMBEDDED、COUCHDB_EXPERIMENTAL
我的maven项目中的依赖项列表:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-bom</artifactId>
<version>4.2.0.Final</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.jbossts</groupId>
<artifactId>jbossjta</artifactId>
<version>4.16.6.Final</version>
</dependency>
<!-- Hibernate Search -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-search-orm</artifactId>
<version>5.0.1.Final</version>
</dependency>
<!-- Use this for MongoDB -->
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-mongodb</artifactId>
<version>4.1.3.Final</version>
</dependency>
<!-- cassandra -->
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-cassandra</artifactId>
<version>4.2.0.Final</version>
</dependency>
<!-- mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.36</version>
</dependency>
<!-- postgresql -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.4-1200-jdbc41</version>
</dependency>
<!-- Testing -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.easytesting</groupId>
<artifactId>fest-assert</artifactId>
<version>1.4</version>
<scope>test</scope>
</dependency>
</dependencies>
我怀疑您没有使用最新的Hibernate OGM版本 Cassandra实验支持从版本开始提供
这是数据存储提供程序名称更改为CASSANDRA_的提交:如果您可以删除hibernate ogm mongodb和hibernate ogm CASSANDRA依赖项的版本,您将从BOM中获取它们:
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-mongodb</artifactId>
</dependency>
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-cassandra</artifactId>
</dependency>
org.hibernate.ogm
冬眠ogm mongodb
org.hibernate.ogm
冬眠奥格姆卡桑德拉
您为hibernate ogm mongodb指定了4.1.3,这可能会引入旧版本的hibernate ogm内核。如果它仍然不起作用,那么需要更多关于您的环境的详细信息:这是Java SE还是在JJ服务器(如WildFly)上?谢谢您的提示,我没有使用最新版本,但更改后问题仍然存在。我把pom文件的依赖项列表放进去了,这可能会有帮助吗?谢谢你的回答,当我删除版本时,我在构建项目时遇到了一个错误。对我来说,它从未与maven插件一起工作过,所以我使用“mvn eclipse:eclipse”在控制台上构建了一个eclipse项目。thankt@Gunnar,这就是问题所在。我刚刚为mongoDB使用了版本4.2.0,它起到了作用:)如果在实际的依赖项中忽略了版本,会出现哪个错误?如前所述,由于将BOM导入到依赖关系管理块中,因此不需要使用它们。我只是看了一下。一旦我删除了这个版本,我就会收到我在上面的问题中添加的消息。
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-mongodb</artifactId>
</dependency>
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-cassandra</artifactId>
</dependency>