0

我想用 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.883s 完成时间: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:jar:1.0.0 在http://repo.maven.apache.org/maven2被缓存在本地仓库中,直到中央的更新间隔已经过去或强制更新才会重新尝试解析-> [帮助1]

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

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

4

3 回答 3

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)。
于 2013-06-05T10:35:55.957 回答
1

更具体地说,在 pom 文件的部分中输入如下内容:

<dependency>
      <groupId>com.datastax.cassandra</groupId>
      <artifactId>cassandra-driver-core</artifactId>
      <version>2.0.0-rc2</version>
</dependency>
于 2015-01-27T16:16:58.723 回答
0

从 Sajan 补充说,本地存储库中的下载文件可能已损坏,因此您可以按照他的建议的第 2 步进行操作。

于 2013-06-05T10:41:00.287 回答