WARN util.NativeCodeLoader:Unable to load native-hadoop library for your platform解決方法

1350 ワード

Hadoopローカルモードをテスト中にこのような警告が表示されました!
18/12/09 22:07:09 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

No native hadoop libraries、これは一般的にwindowsとmacosシステムに現れます.これは警告で、間違いではありません.$HADOOP_CONF_DIR/log4j.properties(またはetc/hadoop/log4j.properties) , :のように)
log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR 

これにより、warnではなくerrorsのみがログに表示されます.
もう1つの方法は、$HADOOP_HOME/lib/nativeで、ファイルlibhadoopを表示できます.so.1.0.0、中にはHadoopの桁数が表示され、公式サイトでダウンロードした表示は64ビットで、以下のように表示されます.
mymacdeMac-mini:native mymac$ file libhadoop.so.1.0.0 
libhadoop.so.1.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=51a4842b7499ff1fac8767851ac84cbddd4193eb, with debug_info, not stripped

ファイルもオペレーティングシステムも64ビットなのに、なぜこのような警告が出るのでしょうか.ライブラリファイルをロードしなかった構成が少なくなったに違いありません.
1.まず.bash_プロファイルにパスを設定するには、次の手順に従います.
vim .bash_profile

export HADOOP_HOME=/usr/local/hadoop-x.y.z
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"

2.発効すればよい:
source .bash_profile