gpt4 book ai didi

java - Opencv Java异常

转载 作者:搜寻专家 更新时间:2023-10-30 21:46:08 24 4
gpt4 key购买 nike

我正在使用 Windows 7 并在尝试运行使用 opencv 库的 Java 项目时遇到此异常:

Exception in thread "main" 
java.lang.UnsatisfiedLinkError: no opencv_java in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.opencv.highgui.Highgui.<clinit>(Highgui.java:416)
at teste.main(teste.java:21)

我做错了什么?是否缺少某些导入?

我想在 Eclipse(不是 Android)中创建一个使用 openCV 的简单 Java 项目。

  • 所以我从 OpenCV-2.4.2.exe 文件中提取了 javacv 到 C:\
  • 然后执行"cmake -G "MinGW Makefiles"-DBUILD_opencv_java=ONC:\opencv”命令,然后是“mingw32-make”。一切都是构建无错误或警告
  • 在我将 opencv dll 添加到我的环境变量之后

最佳答案

引发此异常是因为系统正在尝试查找 OpenCV 为该特定平台所需的 native 库,但没有找到。

Exception in thread "main" 
java.lang.UnsatisfiedLinkError: no opencv_java in java.

要解决此错误:

  1. 如果您使用的是 opencv 版本 那么@user3033420 给出的答案就是解决方案。
  2. 如果您使用的版本是>= opencv 2.4.6,则jar 在核心类 中有一个名为NATIVE_LIBRARY_NAME 的常量变量> 你给 FaceDetector 类中的 loadLibrary() 函数以在你的项目中包含 opencv 的特性,你可能已经有了这个:

    System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

使用上面的命名常量,就不需要记住strang dll文件的名字了。

opencv 2.4.9.jar 添加到项目首选项的构建路径中:

Window -> Preferences -> Java Build Path –> Add Library -> User Libraries -> 
User Library -> & click New

您将看到如下对话框。 添加 opencv-2.4.9 作为库名称并单击确定。

Create New User Library

然后 添加外部 Jar 并找到您的 opencv jar 并单击确定。然后展开 opencv-2.4.9.jar 并单击 Native Library Location (None) 如下所示:

Add Native Library Location of OpenCV

必要的步骤:输入包含“opencv-2.4.9”使用的原生库的文件夹的位置,然后单击“确定”,如下所示:

Native Library Folder Configuration

所以现在 jar 现在拥有完成工作所需的所有 native 库。重新构建 java 程序,一切都应该按设计编译和运行。

关于java - Opencv Java异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12840758/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com