【发布时间】:2015-09-25 23:55:18
【问题描述】:
提前谢谢..
我有一个项目使用 opencv-300.jar 作为外部库。我已经在 eclipse 和 natBeans 中尝试过这个。 当我从 IDE 本身运行我的项目时,它都可以成功运行。 我希望我的项目将其导出为可运行(或可执行)的 jar。 我将我的 opencv_java300.dll 文件放在带有主 java 文件的源文件夹中,并在
中给出了它的名称 System.loadLibrary("opencv_java300");
我将 opencv-300.jar 放在外部 jar 库和主程序所需的所有其他文件中。从 IDE 运行时它可以成功运行,但是当我创建可执行 jar 时,它会显示错误
Exception in thread "main" java.lang.UnsatisfiedLinkError: no
opencv_java300 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 CropFaceImage.main(CropFaceImage.java:27)
请告诉我有没有办法在程序本身中提供 java.library.path。即使我删除了外部库中 opencv_java300.dll 文件的路径,我的项目也能成功运行。
【问题讨论】:
-
对于 mac 看这个stackoverflow.com/a/35112123/1924979
-
有用的答案在这里:stackoverflow.com/a/2309723/1979882
-
在我的例子中,我使用了github.com/openpnp/opencv,并且必须将
nu.pattern.OpenCV.loadShared();放在我的代码开头以使用本机库并避免此错误消息。