SparkSQL訪問Hive遇到的問題及解決方法
需要先將hadoop的core-site.xml,hive的hive-site.xml拷貝到project中
測試代碼

報錯

查看源碼

解決方法
將$HIVE_HOME/lib下的spark-hive_2.11-2.4.2.jar與spark-hive-thriftserver_2.11-2.4.2.jar添加到project中
繼續報錯

查看源碼

進入ConfVars

發現ConfVars中定義的變量并沒有METASTORE_CLIENT_SOCKET_LIFETIME,而HiveConf.java來自于hive-exec-1.1.0-cdh5.7.0.jar,即證明hive1.1.0中并沒有假如該參數。
解決方法
將hive依賴換為1.2.1

繼續報錯

解決方法
這是因為遠端沒有啟動hive造成的,啟動hive時需要配置metastore。