我正在尝试使用 RJDBC 包将 R 连接到 Hive 集群。
我写的代码是:
drv <- JDBC(driverClass = "org.apache.hive.jdbc.HiveDriver",
classPath = list.files("C:/hive-jdbc/hive-jdbc-0.10.0.jar",
pattern="jar$",full.names=T),
identifier.quote="'")
我也已将“C:/hive-jdbc”添加到我的系统路径变量中。
但是我收到以下错误:
Error in path.expand(unlist(strsplit(classPath, .Platform$path.sep))) :
invalid 'path' argument
有人可以帮我解决这个问题吗?
最佳答案
在
classPath = list.files("C:/hive-jdbc/hive-jdbc-0.10.0.jar",
pattern="jar$",full.names=T)
您使用 list.files
。 list.files
的第一个参数应该是一个文件夹,您似乎给了它一个 jar 文件。 just list.files
在您的系统上运行的输出是什么?可能是 character(0)
。这搞砸了 classPath
。解决这个问题 - 它不清楚您希望 classPath
参数的值在这里。如果你希望它是一个文件夹中的所有.jar
文件,那么
list.files("C:/wherever/", pattern="\.jar$", full.names=TRUE)
应该这样做。如果它只是一个 jar 文件,只需将其放入:
classPath="C:/hive-jdbc/hive-blahlah-999.jar"
在通话中。即,保持简单!
关于java - 使用 JDBC 将 R 连接到 Hive,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34283489/