从分布式缓存加载共享库

时间:2013-04-28 07:02:41

标签: hadoop mapreduce shared-libraries unsatisfiedlinkerror

我有一个共享库,我将其复制到hdfs

/user/uokuyucu/lib/libxxx.so

我有一个WordCount.java,其中包含来自教程的相同代码以及我自己的FileInputFormatMyFileInputFormat,除了构造函数修改如下之外,其中没有任何内容:

public MyInputFileFormat() {
            System.loadLibrary("xxx");  
}

我还在作业设置(主要)中将我的共享库添加到分布式缓存中:

DistributedCache.addCacheFile(new URI("/user/uokuyucu/lib/libxxx.so"),           
job.getConfiguration()); 

我把它当作;

hadoop jar mywordcount.jar mywordcount.WordCount input output

并获得java.lang.UnsatisfiedLinkError: no far_jni_interface in java.library.path例外。

如何在hadoop作业中加载共享库?

0 个答案:

没有答案