问题1:
win11, hadoop2.7.2
org.apache.hadoop.util.Shell.ShellCommandExecutor#command 执行命令
执行cmd命令失败:
“D:\hadoop-2.7.2\bin\winutils.exe” chmod 0644 “D:\xx\xxx\parquet\xxx\1.parquet”
cmd命令执行,报错: msvcr100.dll、msvcr120.dll 不存在
Microsoft Visal C++ Redistributable下载链接:
https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-140
下载2013版本自带: msvcr100.dll、msvcr120.dll 解决问题
问题2:
org.apache.commons.logging.Log#warn(java.lang.Object): Unable to load native-hadoop library for your platform… using builtin-java classes where applicable
JAVA_HOME不能含有特殊空格(即不能默认JDK位置:C:\Program Files\Java\jdk-1.8)
切换合适版本,cmd校验依赖是否完整: hadoop checknative -a
附:
hadoop版本下载: https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/
如还是无效替换hadoop bin目录: hadoop对应winutils.exe以及hadoop.dll:https://gitee.com/nkuhyx/winutils