如題,在 Windows 系統下,通過 IDEA 等開發工具運行 Hadoop / Spark 任務,報錯如下:
java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
可通過下述方式嘗試解決:
1)到這里 https://github.com/cdarlint/winutils 下載和你的 Hadoop 版本對應的工具所在的整個目錄,比如 hadoop-3.2.0
;
2)在本機創建不包含中文和空格的目錄(比如 D:\software\hadoop
);
3)把下載的文件中的 winutils.exe
拷貝到上述文件夾中;
4)在代碼中設置環境變量:
System.setProperty("hadoop.home.dir", "file:///D:/software/hadoop/");
5)創建臨時目錄(如 D:\data\hadoop_tmp
),並給予 777 權限;
7)Spark Session 中加入下述配置:
.config("spark.sql.warehouse.dir", "file:///D:/data/hadoop_tmp")
再來運行,看還有沒有報錯吧:-)
版權聲明
出處:博客園-瘦風的南牆(https://www.cnblogs.com/shoufeng)
感謝閱讀,公眾號 「瘦風的南牆」 ,手機端閱讀更佳,還有其他福利和心得輸出,歡迎掃碼關注🤝
本文版權歸博主所有,歡迎轉載,但 [必須在頁面明顯位置標明原文鏈接],否則博主保留追究相關人士法律責任的權利。