通过jdbc 连接 hive2 问题解决driver未发现

通过官网示例可知
https://cwiki.apache.org/confluence/display/Hive/HiveClient#HiveClient-JDBC
在idea 中运行
报如下错误

java.lang.ClassNotFoundException: org.apache.hadoop.hive.jdbc.HiveDriver
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)

通过jdbc 连接 hive2 问题解决driver未发现

由提示可知没有这个名为 org.apache.hadoop.hive.jdbc.HiveDriver 的类
第一步检查 hive 依赖
通过jdbc 连接 hive2 问题解决driver未发现
maven 中添加了依赖
第二步检查类名是否填写正常
检查 jdbc 驱动
通过jdbc 连接 hive2 问题解决driver未发现
找到Driver 的接口

通过jdbc 连接 hive2 问题解决driver未发现

这是jdbc 连接数据库必须实现的接口
idea 快捷键(ctrl+H)显示出实现该接口的所有的方法
通过jdbc 连接 hive2 问题解决driver未发现
在这里找到hive 相关的驱动
通过jdbc 连接 hive2 问题解决driver未发现
第三步 使用该类(包名+类名)重新跑代码测试

通过jdbc 连接 hive2 问题解决driver未发现
运行
通过jdbc 连接 hive2 问题解决driver未发现
报错,但是和开始的错误不一样了说明那个问题解决了,再看这个错误

说的是未找到合适的驱动
进去查看
通过jdbc 连接 hive2 问题解决driver未发现
再进
通过jdbc 连接 hive2 问题解决driver未发现
再进
通过jdbc 连接 hive2 问题解决driver未发现
又回到这个顶级接口了
去查看hive实现类中connect 方法
通过jdbc 连接 hive2 问题解决driver未发现
说明url 和包中的不匹配
改成他这样的
通过jdbc 连接 hive2 问题解决driver未发现
再进行测试
通过jdbc 连接 hive2 问题解决driver未发现
结果出来了
解决问题的思路大致就是这样的,方法很重要

猜你喜欢

转载自blog.51cto.com/15084467/2647749