java.lang.unsatifiedLinkError

wgmfuz8q  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(316)

我使用的是com.cloudera.crunch版本:“0.3.0-3-cdh-5.2.1”。
我有一个小程序,可以读取一些avro,并根据一些标准过滤出无效数据。我正在使用pipeline.write(pcollection,avrofiletarget)来写入无效的数据输出。在生产运行中效果良好。
对于这段代码的单元测试,我使用mempipeline示例。但是,在这种情况下,它在写入输出时失败。
我得到错误:

java.lang.UnsatisfiedLinkError: org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjava/lang/String;JZ)V
    at org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(Native Method)
    at org.apache.hadoop.util.NativeCrc32.calculateChunkedSumsByteArray(NativeCrc32.java:86)
    at org.apache.hadoop.util.DataChecksum.calculateChunkedSums(DataChecksum.java:428)
    at org.apache.hadoop.fs.FSOutputSummer.writeChecksumChunks(FSOutputSummer.java:197)
    at org.apache.hadoop.fs.FSOutputSummer.flushBuffer(FSOutputSummer.java:163)
    at org.apache.hadoop.fs.FSOutputSummer.flushBuffer(FSOutputSummer.java:144)
    at org.apache.hadoop.fs.FSOutputSummer.write(FSOutputSummer.java:78)
    at org.apache.hadoop.fs.FSDataOutputStream$PositionCache.write(FSDataOutputStream.java:50)
    at java.io.DataOutputStream.writeBytes(DataOutputStream.java:276)
    at com.cloudera.crunch.impl.mem.MemPipeline.write(MemPipeline.java:159)

知道怎么了吗?

8i9zcol2

8i9zcol21#

hadoop环境变量应与hadoop.dll和winutils.exe一起正确配置。
在执行mr job/application-djava.library.path=hadoop\u home/lib/native时也传递jvm参数

相关问题