hadoop出现Unable to load native-hadoop library for your platform..警告

1 篇文章 0 订阅

本人使用的hadoop版本是:

每次执行hadoop命令:列如 hadoop fs ls /、./start-dfs.sh启动dfs时

都会出现如下警告 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

这个警告是加载不到native-hadoop的本地库.

通过官网的说明:https://hadoop.apache.org/docs/r3.1.2/hadoop-project-dist/hadoop-common/NativeLibraries.html

hadoop的一些不兼容性需要通过编译对应hadoop版本的源码来拿到native-hadoop

到此 ,我们开始编译源码,通过GitHub拉下hadoop的源码:https://github.com/apache/hadoop

通过官网提供的命令,进入到hadoop的目录执行 mvn package -Pdist,native -DskipTests -Dtar

可能由于我之前编译过一次 ,但报错了,做了某些修改(具体忘记了),本次编译较快,并且成功了

编译成功后hadoop-3.1.1-src/hadoop-dist/target/hadoop-3.1.1/lib/native 会在这个目录生成native库, 之后我们再把hadoop的hadoop-3.1.1/lib/native目录下的所有文件替换成刚刚编译好的native下的所有文件.

之前native有如下文件

替换之后(编译源码)的native目录中的文件

至此,执行hadoop的命令没有了上面的警告

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值