尝试使用JDBC连接到配置单元。
网址:jdbc:hive2://...
驱动程序:org.apache.hive.jdbc.HiveDriver
我在类路径上:
/usr/hdp/current/hive-client/lib/hive-jdbc.jar
(3.1.0)/usr/hdp/current/hive-client/lib/hive-common.jar
(3.1.0)/usr/hdp/current/hive-client/lib/hive-service.jar
(3.1.0)/usr/hdp/current/hadoop-client/hadoop-common.jar
(3.1.1)/usr/hdp/current/hive-client/lib/hive-service.jar
(3.1.0)/usr/hdp/current/hive-client/lib/libthrift-0.9.3-1.jar
/usr/hdp/current/hive-client/lib/libfb303-0.9.3.jar
/usr/hdp/current/hive-client/lib/hive-exec.jar
(3.1.0)/usr/hdp/current/hive-client/lib/hive-jdbc-handler.jar
(3.1.0)我收到错误消息“找不到适用于jdbc:hive2的驱动程序”。我究竟做错了什么?
Apache Hive(版本3.1.0.3.1.4.0-315)
def configure(hiveConfig: HiveSettings): Either[String, Unit] =
for {
_ <- Either
.catchNonFatal(Class.forName("org.apache.hive.jdbc.HiveDriver"))
.leftMap(_.getMessage)
_ <- Either.right(ConnectionPool.singleton(hiveConfig.url, null, null))
} yield {
Logger.debug(s"Hive URL: [${hiveConfig.url}]")
}
最佳答案
在打开连接之前,尝试显式加载Hive驱动程序。您的版本似乎不兼容JDBC4,即不会自动加载。
try {
Class.forName("org.apache.hive.jdbc.HiveDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
关于hadoop - 找不到适用于jdbc:hive2的驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60949754/