如何建立Cassandra连接

时间:2013-06-05 10:28:00

标签: java cassandra datastax-java-driver

我想用java类与Cassandra建立连接。但是它没有用。这是我的代码..

import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Row;
import com.datastax.driver.core.Session;


class CassandraConnection { 

public static void main(String[] args) {
    String serverIp = "166.78.10.41";
    String keyspace = "gamma";
    CassandraConnection connection;

    Cluster cluster = Cluster.builder()
            .addContactPoints(serverIp)
            .build();

    Session session = cluster.connect(keyspace);


    String cqlStatement = "SELECT * FROM TestCF";
    for (Row row : session.execute(cqlStatement)) {
        System.out.println(row.toString());
    }

}
}

这是错误日志..

建筑失败

总时间:0.883秒 完成时间:Wed Jun 05 15:54:02 IST 2013

最终记忆:4M / 15M

无法在项目CassandraConnection上执行目标:无法解析项目com.mycompany的依赖项:CassandraConnection:jar:1.0-SNAPSHOT:无法解析以下工件:com.datastax.cassandra:cassandra-driver-parent:jar :1.0.0,org.specs2:scalaz-effect_2.11.0-SNAPSHOT:jar:7.0.1-SNAPSHOT,org.scalaz:scalaz-effect_2.9.3:jar:7.1.0-SNAPSHOT:找不到com.datastax。 cassandra:cassandra-driver-parent:http://repo.maven.apache.org/maven2中的jar:1.0.0缓存在本地存储库中,在中心的更新间隔过去或强制更新之前,不会重新尝试解析 - > [帮助1]

要查看错误的完整堆栈跟踪,请使用-e开关重新运行Maven。 使用-X开关重新运行Maven以启用完整的调试日志记录。

有关错误和可能的解决方案的更多信息,请阅读以下文章: [帮助1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

3 个答案:

答案 0 :(得分:2)

不是cassandra专家,但是 只是通过查看错误,maven似乎无法解析cassandra相关的依赖项

解决方案:

  1. 我手动检查了maven repo(http://repo.maven.apache.org/maven2)casandra依赖项,这表明您可能在连接机器maven repo时遇到问题,这可能是防火墙问题。
  2. 如果防火墙不允许您从maven repo下载文件,请手动下载文件并手动将文件安装到本地仓库(http://maven.apache.org/plugins/maven-install-plugin/install-file-mojo.html)。

答案 1 :(得分:1)

更具体地说,在pom文件的部分输入类似的内容:

<dependency>
      <groupId>com.datastax.cassandra</groupId>
      <artifactId>cassandra-driver-core</artifactId>
      <version>2.0.0-rc2</version>
</dependency>

答案 2 :(得分:0)

从Sajan中添加以上内容可能是本地存储库中下载的文件已损坏,因此您可以按照其建议的第2步进行操作。