线程“main”中的异常
java.lang.RuntimeException: native snappy library not available: this version of libhadoop was built without snappy support.
at org.apache.hadoop.io.compress.SnappyCodec.checkNativeCodeLoaded(SnappyCodec.java:65)
at org.apache.hadoop.io.compress.SnappyCodec.getDecompressorType(SnappyCodec.java:193)
at org.apache.hadoop.io.compress.CodecPool.getDecompressor(CodecPool.java:178)
at org.apache.hadoop.io.compress.CompressionCodec$Util.createInputStreamWithCodecPool(CompressionCodec.java:157)
at org.apache.hadoop.io.compress.SnappyCodec.createInputStream(SnappyCodec.java:164)
我可以看到snappy库已正确安装。我已经提到使用-Djava.library.path的lib路径,仍然导致相同的错误。
有什么建议吗?
hadoop checknative -a
本地库检查:
hadoop: true /opt/cloudera/parcels/CDH-5.7.1-1.cdh5.7.1.p0.11/lib/hadoop/lib/native/libhadoop.so.1.0.0
zlib: true /lib64/libz.so.1
snappy: true /opt/cloudera/parcels/CDH-5.7.1-1.cdh5.7.1.p0.11/lib/hadoop/lib/native/libsnappy.so.1
lz4: true revision:10301
bzip2: true /lib64/libbz2.so.1
openssl: true /usr/lib64/libcrypto.so
答案 0 :(得分:0)
您似乎正在遇到:
Snappy可能会抱怨如果找不到libhadoop,Hadoop的构建没有snappy。
https://issues.apache.org/jira/browse/HADOOP-13684
你应该调试libhadoop.so并查看你的LD_LIBRARY_PATH作为初学者。
答案 1 :(得分:0)
问题已解决。
我在类路径中使用了错误版本的hadoop-core jar文件。
修改使用当前CDH版本的hadoop核心jar后,能够执行快速压缩和解压缩。