local模式運行spark-shell時報錯 java.lang.IllegalArgumentException: Error while instantiating 'org.apache.spark.sql.hive.HiveSessionState':


先前在local模式下,什么都不做修改直接運行./spark-shell 運行什么問題都沒有,然后配置過在HADOOP yarn上運行,之后再在local模式下運行出現以下錯誤:

java.lang.IllegalArgumentException: Error while instantiating 'org.apache.spark.sql.hive.HiveSessionState':
  at org.apache.spark.sql.SparkSession$.org$apache$spark$sql$SparkSession$$reflect(SparkSession.scala:981)
  at org.apache.spark.sql.SparkSession.sessionState$lzycompute(SparkSession.scala:110)
  at org.apache.spark.sql.SparkSession.sessionState(SparkSession.scala:109)
  at org.apache.spark.sql.SparkSession$Builder$$anonfun$getOrCreate$5.apply(SparkSession.scala:878)

......

  at org.apache.hadoop.ipc.Client$Connection.access$2900(Client.java:375)
  at org.apache.hadoop.ipc.Client.getConnection(Client.java:1528)
  at org.apache.hadoop.ipc.Client.call(Client.java:1451)
  ... 105 more
<console>:14: error: not found: value spark
       import spark.implicits._
              ^
<console>:14: error: not found: value spark
       import spark.sql


改了之前的設置甚至直接下了一個新的版本運行還是一樣,而且中間很郁悶的發現一直存在hadoop master節點的域名,不知道從哪獲取的。

網上的說法一般是log4j等庫在訪問某個文件時的權限問題,或者某個地方運行模式不對,測試修改都沒用。

本以為是某個臨時路徑沒有建在spark的文件夾中,找了半天系統的臨時目錄。突然想到和hadoop的鏈接方式,通過環境變量!!將 HADOOP_CONF_DIR環境變量設置為空則解決問題

export HADOOP_CONF_DIR=


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM