R连接到Hive protobuf类错误

时间:2018-05-22 14:53:24

标签: r hive protocol-buffers

我尝试使用R连接到远程Hive,每一步我发现一个新错误。目前我正在这样做:

library("DBI")
library("rJava")
library("RJDBC")

cp = c("/path/jars/hadoop-common-3.1.0.jar", 
       "/path/jars/hive-jdbc-2.3.3-standalone.jar")
.jinit(classpath=cp)

       drv <- JDBC("org.apache.hive.jdbc.HiveDriver", 
"/path/jars/hive-jdbc-2.3.3-standalone.jar", 
                    identifier.quote="`")
        conn <- dbConnect(drv, "jdbc:hive2://<ip>:10000/default", "myuser", "")

我得到的是以下错误,它是关于protobuf的,但不知道它是本地问题(环境?)还是服务器端。

java.lang.NoClassDefFoundError: com/google/protobuf/ProtocolMessageEnum

1 个答案:

答案 0 :(得分:0)

从hadoop安装下载或获取protobuf.jar并添加它解决了这个问题。

cp = c("/path/jars/hadoop-common-3.1.0.jar", 
       "/path/jars/hive-jdbc-2.3.3-standalone.jar",
       "/path/jars/protobuf-java-2.5.0.jar")