Java 8 opencv简单示例UnsatisfiedLinkError [英] Java 8 opencv easy example UnsatisfiedLinkError
本文介绍了Java 8 opencv简单示例UnsatisfiedLinkError的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想学习opencv,所以我想运行此代码示例.
I would like to learn opencv so I wanted to run this code code example.
我已经从opencv 3.4.2下载了软件包,已在intellij Java版本8中严格添加.版本3.20 mi正常工作,但需要3.4.2或更高版本.请帮助,我不能做什么.这是我的代码:
I have downloaded package from opencv 3.4.2, rigidly added in intellij, java version 8. Version 3.20 mi works properly but needs a higher version of 3.4.2 or higher. Please help, I can not do what. This is my code:
public class Main {
public static void main(String[] args) {
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
System.out.println("Welcome to OpenCV " + Core.VERSION);
Mat m = new Mat(5, 10, CvType.CV_8UC1, new Scalar(0));
System.out.println("OpenCV Mat: " + m);
Mat mr1 = m.row(1);
mr1.setTo(new Scalar(1));
Mat mc5 = m.col(5);
mc5.setTo(new Scalar(5));
System.out.println("OpenCV Mat data:\n" + m.dump());
}
}
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Work\opencv\opencv\build\java\x64\opencv_java342.dll: Can't find dependent libraries
at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2430)
at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2487)
at java.base/java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2684)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2649)
at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:829)
at java.base/java.lang.System.loadLibrary(System.java:1867)
at Main.main(Main.java:9)
推荐答案
您需要使用以下命令加载.dll或.so库:
You need to load .dll or .so library using:
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
或
System.load(PATH_TO_NATIVE_LIB);
接下来,您需要向pom.xml添加依赖项:
Next you need to add dependency to pom.xml:
<dependency>
<groupId>org.openpnp</groupId>
<artifactId>opencv</artifactId>
<version>3.4.2-1</version>
</dependency>
库版本和依赖版本必须相同.
Library and dependency versions must be the same.
这篇关于Java 8 opencv简单示例UnsatisfiedLinkError的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文