我有一个共享库,我将其复制到hdfs
/user/uokuyucu/lib/libxxx.so
我有一个WordCount.java
,其中包含来自教程的相同代码以及我自己的FileInputFormat
类MyFileInputFormat
,除了构造函数修改如下之外,其中没有任何内容:
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作业中加载共享库?