java.library.path hadoop中没有libopencv_core.so

java.library.path hadoop中没有libopencv_core.so,opencv,hadoop,hadoop2,opencv3.1,hadoop-native-library,Opencv,Hadoop,Hadoop2,Opencv3.1,Hadoop Native Library,我在hadoop中工作,当我为我的图像处理程序创建runnable jar时,突然发生了这个错误,它与opencv本机库路径有关 使用eclipse时,我可以使用以下方法设置路径: //System.loadLibrary(Core.NATIVE\u LIBRARY\u NAME) 但是,在使用hadoop执行runnable jar时,会出现错误。 谁能纠正 hduser@master:/home/mnh/Desktop$ hadoop jar opencv19.jar /usr/l

我在hadoop中工作,当我为我的图像处理程序创建runnable jar时,突然发生了这个错误,它与opencv本机库路径有关

使用eclipse时,我可以使用以下方法设置路径:

//System.loadLibrary(Core.NATIVE\u LIBRARY\u NAME)

但是,在使用hadoop执行runnable jar时,会出现错误。 谁能纠正

    hduser@master:/home/mnh/Desktop$ hadoop jar  opencv19.jar /usr/local/hadoop/input/cars.mp4 /usr/local/hadoop/cars89
17/06/07 16:15:37 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
17/06/07 16:15:39 INFO client.RMProxy: Connecting to ResourceManager at master/192.168.137.52:8050
17/06/07 16:15:40 WARN mapreduce.JobSubmitter: Hadoop command-line option parsing not performed. Implement the Tool interface and execute your application with ToolRunner to remedy this.
17/06/07 16:16:08 INFO input.FileInputFormat: Total input paths to process : 1
17/06/07 16:16:08 INFO mapreduce.JobSubmitter: number of splits:1
17/06/07 16:16:09 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1496831815466_0009
17/06/07 16:16:09 INFO impl.YarnClientImpl: Submitted application application_1496831815466_0009
17/06/07 16:16:09 INFO mapreduce.Job: The url to track the job: http://master:8088/proxy/application_1496831815466_0009/
17/06/07 16:16:09 INFO mapreduce.Job: Running job: job_1496831815466_0009
17/06/07 16:16:20 INFO mapreduce.Job: Job job_1496831815466_0009 running in uber mode : false
17/06/07 16:16:20 INFO mapreduce.Job:  map 0% reduce 0%
17/06/07 16:16:29 INFO mapreduce.Job: Task Id : attempt_1496831815466_0009_m_000000_0, Status : FAILED
Error: no libopencv_core.so in java.library.path
17/06/07 16:16:37 INFO mapreduce.Job: Task Id : attempt_1496831815466_0009_m_000000_1, Status : FAILED
Error: no libopencv_core.so in java.library.path
17/06/07 16:16:45 INFO mapreduce.Job: Task Id : attempt_1496831815466_0009_m_000000_2, Status : FAILED
Error: no libopencv_core.so in java.library.path
17/06/07 16:16:54 INFO mapreduce.Job:  map 100% reduce 100%
17/06/07 16:16:55 INFO mapreduce.Job: Job job_1496831815466_0009 failed with state FAILED due to: Task failed task_1496831815466_0009_m_000000
Job failed as tasks failed. failedMaps:1 failedReduces:0

17/06/07 16:16:56 INFO mapreduce.Job: Counters: 12
    Job Counters 
        Failed map tasks=4
        Launched map tasks=4
        Other local map tasks=3
        Data-local map tasks=1
        Total time spent by all maps in occupied slots (ms)=26582
        Total time spent by all reduces in occupied slots (ms)=0
        Total time spent by all map tasks (ms)=26582
        Total vcore-seconds taken by all map tasks=26582
        Total megabyte-seconds taken by all map tasks=27219968
    Map-Reduce Framework
        CPU time spent (ms)=0
        Physical memory (bytes) snapshot=0
        Virtual memory (bytes) snapshot=0

您收到的错误消息与工作人员无法使用OpenCV有关,因为它未安装在相应的计算机上。因此,解决方案是在安装了Nodemanager组件(将执行任务的组件)的集群计算机上安装OpenCV。要使用
System.loadLibrary()
方法加载库,您需要将
so
文件的位置添加到
PATH
系统变量。

您收到的错误消息与工人无法使用OpenCV有关,因为它未安装在相应的机器上。因此,解决方案是在安装了Nodemanager组件(将执行任务的组件)的集群计算机上安装OpenCV。要使用
System.loadLibrary()
方法加载库,您需要将
so
文件的位置添加到
PATH
系统变量。

您需要撤消我之前提出的建议。从Hadoop本机路径中删除该文件并放到其他位置。顺便说一句,前面的建议解决了问题,但有一件事发生了mapreduce作业变慢,我的map reduce在map 100%和reduce 0%处出现超时错误@Serhiyy您需要撤消我之前提出的建议。从Hadoop本机路径中删除文件并放到其他位置。顺便说一句,前面的建议解决了问题,但有一件事发生了:mapreduce作业速度减慢,我的map reduce在map 100%和reduce 0%处出现超时错误@SerhiyThank先生,非常感谢您。我成功地执行了我的hadoop应用程序:)在您提供的解决方案之后非常感谢您,先生。在您提供的解决方案之后,我成功地执行了hadoop应用程序:)