我是新来卡桑德拉和我想连接到卡桑德拉与Java jdbc.I使用下面的代码,并得到这个错误信息...连接卡桑德拉和Java
try {
Class.forName(driver).newInstance();
con = DriverManager.getConnection(url, username, password);
System.out.println(con);
} catch(Exception e){
e.printStackTrace();
}
ERROR: Exception in thread "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) at org.apache.cassandra.cql.jdbc.CassandraDriver.connect(CassandraDriver.java:92) at java.sql.DriverManager.getConnection(DriverManager.java:620) at java.sql.DriverManager.getConnection(DriverManager.java:200) at connect.Connect.main(Connect.java:24)
我也使用这些罐子:
- 赫克托 - 核心1.1-2
- libthrift-0.6.1.jar
- 卡桑德拉-JDBC-1.2.1.jar
- 卡桑德拉 - 全0.7.0.jar
谁能帮助我吗?
您还需要cql jar。可以从Apache网站下载它。 – Chandana
看起来这个错误背后的原因是多个Cassandra在classpath中节省了jar版本。这是Cassandra 1.2中引入的“Cassandra $ Client.set_cql_version”,但在早期版本中不可用。 –