1

我是 cassandra 的新手,我想使用 java jdbc 连接到 cassandra。我使用下面的代码并收到此错误消息...

try {
  Class.forName(driver).newInstance();
  con = DriverManager.getConnection(url, username, password);
  System.out.println(con);
} catch(Exception e){
  e.printStackTrace();
}

错误:线程“main”中的异常 java.lang.NoSuchMethodError: org.apache.cassandra.thrift.Cassandra$Client.set_cql_version(Ljava/lang/String;)V at org.apache.cassandra.cql.jdbc.CassandraConnection.( CassandraConnection.java:138) 在 org.apache.cassandra.cql.jdbc.CassandraDriver.connect(CassandraDriver.java:92) 在 java.sql.DriverManager.getConnection(DriverManager.java:620) 在 java.sql.DriverManager.getConnection (DriverManager.java:200) 在 connect.Connect.main(Connect.java:24)

我也使用这些罐子:

  • 赫克托核心1.1-2
  • libthrift-0.6.1.jar
  • cassandra-jdbc-1.2.1.jar
  • cassandra-all-0.7.0.jar

任何人都可以帮助我吗?

4

2 回答 2

2

您可能面临 Anse Danesh 提到的版本不匹配问题。为了在 Java 中使用 Cassandra,我建议使用 DataStax Cassandra java 驱动程序
https://github.com/datastax/java-driver

它非常易于使用,并且由 DataStax 社区妥善维护。

于 2013-08-05T11:16:41.620 回答
1

听起来像是 JDBC jar 和其他 Cassandra jar 之间的版本不匹配。

于 2013-08-04T15:34:30.507 回答