永发信息网

错误: 找不到或无法加载主类 Djava.library.path=.usr.hadoop.hadoop-2.8.0.lib:.

答案:1  悬赏:70  手机版
解决时间 2021-02-27 17:47
错误: 找不到或无法加载主类 Djava.library.path=.usr.hadoop.hadoop-2.8.0.lib:.
最佳答案
最近,打算Hbase建表用snappy压缩时,碰到一些Hadoop本地库的问题。其实这些问题是一直存在的,只是不影响正常使用,就没有引起重视。这次希望彻底解决以下问题:
问题一:执行start-dfs.sh时出现以下日志
xxxx: Java HotSpot(TM) 64-Bit Server VM warning: You have loaded library /usr/local/hadoop-2.4.0/lib/native/libhadoop.so which might have disabled stack guard. The VM will try to fix the stack guard now.
xxxx: It's highly recommended that you fix the library with 'execstack -c ', or link it with '-z noexecstack'.
这是因为官网提供的版本本地库是32位的,在64位主机环境下无法执行。需要下载hadoop源码进行编译(如何编译源码可以上网搜索),编译成功后,找到native下的文件拷贝到${HADOOP_HOME}/lib/native目录下即可。
问题二:执行start-dfs.sh时出现以下日志
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
在网上找到的所有文章中,都是说在hadoop-env.sh中加入以下两行配置:
export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/"
但是在测试过程中,加入以上配置还是会提示告警信息,说明本地库未加载成功。
开启debug:
export HADOOP_ROOT_LOGGER=DEBUG,console
执行start-dfs.sh,发现以下日志:
DEBUG util.NativeCodeLoader: Failed to load native-hadoop with error: Java.lang.UnsatisfiedLinkError: no hadoop in java.library.path
从日志中可以看出hadoop库不在java.library.path所配置的目录下,应该是java.library.path配置的路径有问题。在hadoop-env.sh中重新配置:
export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/native/"
执行start-dfs.sh,告警信息不再显示。经测试,其实只需export HADOOP_OPTS即可解决问题。
验证本地库是否加载成功:hadoop checknative
15/08/18 10:31:17 INFO bzip2.Bzip2Factory: Successfully loaded & initialized native-bzip2 library system-native
15/08/18 10:31:17 INFO zlib.ZlibFactory: Successfully loaded & initialized native-zlib library
Native library checking:
hadoop: true /usr/local/hadoop-2.4.0/lib/native/libhadoop.so.1.0.0
zlib: true /lib64/libz.so.1
snappy: true /usr/local/hadoop-2.4.0/lib/native/Linux-amd64-64/libsnappy.so.1
lz4: true revision:99
bzip2: true /lib64/libbz2.so.1
以上说明本地库已经加载成功。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
有一首英文歌~!很舒缓的声音,里面有下雨的
亚新便利店地址在什么地方,想过去办事
【candles是什么意思】davidmccandless是什么
4分之2x减1等于1减八分之三减x求x
我的麦克风玩YY的时候声音像防空洞,耳麦也不
13款和14款宝马3系gt 335i 的区别
好听的有意义的女生网名
场外认购的LOF基金份额注册登记在(  )。A
美菱冰箱制冷过程中有一种烧开水的声音是怎么
我的魅蓝note安卓版本升级了flyme6还是安卓5.
观赏风景用英语怎么说
请问各位原浆啤酒英语怎么讲?希望准确一些.
2016、八月十五生的男孩,4点20分欺名什么好
金属锇有什么作用
基佬已经占领百度贴吧?到处都是肮脏的语言
推荐资讯
qq飞车雷诺的红色轮胎配件是不是要点火装置+1
2011款奥迪q5技术型的钥匙是插入式启动吗
道夫齐格勒和约翰塞纳关系怎么样
淘宝在哪里搜索店铺
我的肚脐里面很怪
大转盘旅社在哪里啊,我有事要去这个地方
月收入4千多可以考虑按揭买房吗
改错The rain was so heary that people who
跌打损伤后 用玫瑰精油可以活血化瘀吗
木瓜如何吃才最营养
新西兰间隔年有哪些条件
给神灵还愿的横幅上写什么好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?