测试hdfs读写文件的时候,已经设置了环境变量,在eclipse Luna 版本下正常,同样的代码在eclipse Oxygen.3a Release (4.7.3a)下报错:java.lang.UnsatisfiedLinkError: org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSums(IILjava/nio/ByteBuffer;ILjava/nio/ByteBuffer;IILjava/lang/String;JZ)V

解决办法:
1.确定好测试用的hadoop版本,下载Hadoop,例如我用的2.7.1版本:http://archive.apache.org/dist/hadoop/common/hadoop-2.7.1/
2.设置环境变量

3.Eclipse: run -> run configurations -> arguments -> VM arguments添加:-Djava.library.path=$HADOOP_HOME/lib/native

本文解决在Eclipse Oxygen.3a版本中进行HDFS读写操作时遇到的java.lang.UnsatisfiedLinkError错误。通过确认Hadoop版本,设置环境变量,并在Eclipse运行配置中添加-Djava.library.path参数,成功解决了问题。
248

被折叠的 条评论
为什么被折叠?



