使用openCV 3.4.2-2的时候 提示,UnsatisfiedLinkError: libopencv_java342.dll
后面查询说是没有加载对应的动态库,网上找了下说是要使用如下代码手动加载
static {
// load native 方法
nu.pattern.OpenCV.loadShared();
}
可以看里面的方法, 他会加载对应的libopencv_java342文件将此文件提取到一个临时位置(当 JVM 关闭时,该位置将被删除),然后加载对应位置的此文件。
private static Path extractNativeBinary(OS os, Arch arch) {
String location;
label34:
switch (os) {
case LINUX:
switch (arch) {
case X86_32:
location = "/nu/pattern/opencv/linux/x86_32/libopencv_java342.so";
break label34;
case X86_64:
location = "/nu/pattern/opencv/linux/x86_64/libopencv_java342.so";
break label34;
case ARMv8:
location = "/nu/pattern/opencv/linux/ARMv8/libopencv_java342.so";

文章讲述了在使用OpenCV3.4.2-2时遇到的UnsatisfiedLinkError,解决方案是通过loadShared方法手动加载动态库,以及提供针对不同平台的文件路径。作者提到可能需要将对应OS的文件复制到系统路径下以解决问题。
最低0.47元/天 解锁文章
762

被折叠的 条评论
为什么被折叠?



