首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.jfindClass中的RJDBC Cassandra ->错误(as.character(DriverClass)[1]):找不到类

问.jfindClass中的RJDBC Cassandra ->错误(as.character(DriverClass)[1]):找不到类
EN

Stack Overflow用户
提问于 2015-09-03 00:36:44
回答 5查看 10.5K关注 0票数 8

我试图将R连接到Cassandra,但我得到了以下错误--即使我在运行代码之前显式地将此目录文件夹添加到类路径中(并且我还指向语句中的类路径)?谢谢你的帮助!

必需(RJDBC)

代码语言:javascript
复制
.jaddClassPath("C:\\Users\\atrombley\\Desktop\\R\\")
cassdrv <- JDBC("org.apache.cassandra.cql.jdbc.CassandraDriver",
                "C:\\Users\\atrombley\\Desktop\\R\\cassandra-jdbc-1.2.5.jar")

.jfindClass(as.character(driverClass)1)中出错:找不到类

EN

回答 5

Stack Overflow用户

发布于 2017-01-12 00:03:50

在我的例子中,在我的JDBC()调用中指定的位置缺少数据库驱动程序。只需将Jar添加到该位置,它就可以工作了!例如:

代码语言:javascript
复制
JDBC(driverClass="com.vertica.jdbc.Driver", classPath="C:/Program Files/Vertica Systems/JDBC/vertica-jdbc-7.2.1-0.jar")

这条有用的线索来自于打开调试:

代码语言:javascript
复制
.jclassLoader()$setDebug(1L)

建议在这里:https://github.com/s-u/RJDBC/issues/26

票数 5
EN

Stack Overflow用户

发布于 2015-09-10 03:08:46

Cassandra JDBC driver v1.2.5不能与Cassandra 2.*一起使用,并且非常非常不推荐使用,仍然使用thrift API,并且只连接到单个节点。

您应该获取我创建的使用Datastax Java驱动程序的新版本:https://github.com/adejanovski/java-driver

这里有一个指向编译版本的链接,其中包含所有必要的依赖项:https://drive.google.com/file/d/0B7fwX0DqcWSTLUFqSEMxVFVWY2M/view?usp=sharing

使用适当的驱动程序类和JDBC url,如下所示:https://github.com/adejanovski/java-driver/tree/2.1/driver-jdbc

另一个更有效的选择(尽管我不熟悉R)应该是在Spark上使用R,并通过Datastax提供的spark-cassandra连接器访问Cassandra。

票数 1
EN

Stack Overflow用户

发布于 2015-09-10 01:45:08

因此,文档非常糟糕,我发现您需要以下“依赖”jar,并且需要将它们放在与驱动程序jar文件相同的文件夹中。

JARS列表:

apache-cassandra-thrift 1.2.6 cassandra-jdbc-2.1.1 log4j-1.2.15 slf4j-simple-1.5.2 libthrift-0.7.0 jackson-core-asl-1.9.2 cassandra-all-1.2.9 slf4j-api-1.5.2 apache-cassandra-clientutil-1.2.6 jackson-mapper-asl-1.9.2 guava-15.0 slf4j-log4j12-1.5.2

然而,即使你足够幸运地解决了这个问题,R找到了你的驱动程序,你也会遇到一个问题,并得到一个似乎还没有人修复的错误......

Log4j:警告找不到记录器(org.apache.cassandra.cql.jdbc.CassandraDriver).的附加程序log4j :警告请正确初始化log4j系统。连接错误(drv@ org.apache.thrift.transport.TTransportException:,“Ljava/sql/.jcall;”,"connect",as.character(url)1,:java.sql.SQLNonTransientConnectionException: jdrv读取负的帧大小(-2097152000)!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32358528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档