【问题标题】:Cassandra jdbc ErrorCassandra jdbc 错误
【发布时间】:2014-04-24 11:58:02
【问题描述】:

我正在尝试使用 cassandra-jdbc-1.2.5 连接到 Cassandra 2.0.3。但它给出了错误:

有什么办法吗?

线程“main”中的异常 java.lang.NoSuchMethodError: org.slf4j.impl.StaticLoggerBinder.getSingleton()Lorg/slf4j/impl/StaticLoggerBinder; 在 org.slf4j.LoggerFactory.bind(LoggerFactory.java:121) 在 org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111) 在 org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:268) 在 org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:241) 在 org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:254) 在 org.apache.cassandra.cql.jdbc.CassandraDriver.(CassandraDriver.java:52) 在 java.lang.Class.forName0(本机方法) 在 java.lang.Class.forName(Class.java:169) 在 cql.main(cql.java:13) Java 结果:1

【问题讨论】:

  • 您的类路径中的 SLF4J 版本错误。
  • 那么这个:org.apache.cassandra.cql.jdbc.CassandraDriver.(CassandraDriver.java:52) at java.lang.Class.forName0(Native Method) at java.lang.Class .forName(Class.java:169) at cql.main(cql.java:13) Java 结果:1
  • 嗯,是的,怎么样?这是调用堆栈的根。

标签: cassandra cassandra-jdbc


【解决方案1】:

cassandra-jdbc 目前不支持 Cassandra 2.0.x。如果要使用 jdbc,则需要降级到 C* 1.2.16。

如果可以的话,我建议使用 CQL 语言和本机协议而不是 jdbc,因为它提供了更惯用的 cassandra 接口以及更复杂的连接池、请求路由、故障转移处理等。

最新的java驱动可以在这里找到:https://github.com/datastax/java-driver

【讨论】:

    猜你喜欢
    • 2013-06-26
    • 1970-01-01
    • 1970-01-01
    • 2021-01-27
    • 1970-01-01
    • 1970-01-01
    • 2013-02-28
    • 2014-09-09
    • 2015-06-12
    相关资源
    最近更新 更多