1. 程式人生 > >Java連線hive報錯01

Java連線hive報錯01

這個錯誤是hive的版本的包導致的。

java.sql.SQLException: Could not establish connection to jdbc:hive2://hadoop2:10000/default: Required field 'serverProtocolVersion' is unset! Struct:TOpenSessionResp(status:TStatus(statusCode:SUCCESS_STATUS), serverProtocolVersion:null, sessionHandle:TSessionHandle(sessionId:THandleIdentifier(guid:AC 5
A 2E B8 FB ED 48 35 BA F5 0C 58 28 E2 FB 56, secret:BD 9D 67 70 F3 4A 4B 03 A4 E1 58 86 AF 02 BE 2C)), configuration:{}) at org.apache.hive.jdbc.HiveConnection.openSession(HiveConnection.java:246) at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:132) at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:105
) at java.sql.DriverManager.getConnection(DriverManager.java:664) at java.sql.DriverManager.getConnection(DriverManager.java:247) at cn.orcale.com.project.CDHHiveJdbcCli.main(CDHHiveJdbcCli.java:24) Caused by: org.apache.thrift.protocol.TProtocolException: Required field 'serverProtocolVersion'
is unset! Struct:TOpenSessionResp(status:TStatus(statusCode:SUCCESS_STATUS), serverProtocolVersion:null, sessionHandle:TSessionHandle(sessionId:THandleIdentifier(guid:AC 5A 2E B8 FB ED 48 35 BA F5 0C 58 28 E2 FB 56, secret:BD 9D 67 70 F3 4A 4B 03 A4 E1 58 86 AF 02 BE 2C)), configuration:{}) at org.apache.hive.service.cli.thrift.TOpenSessionResp.validate(TOpenSessionResp.java:578) at org.apache.hive.service.cli.thrift.TOpenSessionResp$TOpenSessionRespStandardScheme.read(TOpenSessionResp.java:676) at org.apache.hive.service.cli.thrift.TOpenSessionResp$TOpenSessionRespStandardScheme.read(TOpenSessionResp.java:612) at org.apache.hive.service.cli.thrift.TOpenSessionResp.read(TOpenSessionResp.java:520) at org.apache.hive.service.cli.thrift.TCLIService$OpenSession_result$OpenSession_resultStandardScheme.read(TCLIService.java:2041) at org.apache.hive.service.cli.thrift.TCLIService$OpenSession_result$OpenSession_resultStandardScheme.read(TCLIService.java:2026) at org.apache.hive.service.cli.thrift.TCLIService$OpenSession_result.read(TCLIService.java:1973) at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78) at org.apache.hive.service.cli.thrift.TCLIService$Client.recv_OpenSession(TCLIService.java:144) at org.apache.hive.service.cli.thrift.TCLIService$Client.OpenSession(TCLIService.java:131) at org.apache.hive.jdbc.HiveConnection.openSession(HiveConnection.java:237) ... 5 more

解決辦法:

在cdh中或者apache版本中將下列hive包取出來,載入到Eclipse中

這裡寫圖片描述

這裡寫圖片描述

       如果您喜歡我寫的博文,讀後覺得收穫很大,不妨小額贊助我一下,讓我有動力繼續寫出高質量的博文,感謝您的讚賞!!!