gpt4 book ai didi

java - 仅测试 src 文件夹中的 Eclipse Java OpenCV unsatisfiedLinkError

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:33:50 25 4
gpt4 key购买 nike

在我的主 src 文件夹中加载库时没有问题,但在测试 src 文件夹中出现错误。我仍然可以正常编译和运行所有测试并且它们通过了。

两个 src 文件夹都在路径中,我将 opencv 作为一个库。就像我说的,一切正常,所以我猜这是 Eclipse 的问题以及不应该显示的错误的显示?所以主要问题是它在视觉上很痛苦。

enter image description here

enter image description here

EDIT2:我只想再说一遍,一切正常,测试都在运行,只是它们作为问题弹出(而且我没有看到测试错误,因为这个未指定的链接错误在它们之前并掩盖了它们)

此外,它在我的 Windows 和 Ubuntu 机器上做同样的事情。

当我在 System.loadLibrary 之前将它打印出来时,我的路径也是正确的 .../opencv-2.4.11/build/lib

EDIT3:我尝试了 Cibin William 的回答并放置了我的 .dll 路径但无济于事

enter image description here

最佳答案

您可以右键单击项目并单击Build Path -> Configure Build Path -> 然后选择Libraries 选项卡并选择OpenCV jar 文件,然后展开它,然后选择 Native Library Location,然后单击 Edit,然后浏览到 OpenCV 的 dll 文件是这样的 C:\opencv\build\java\x64C:\opencv\build\java\x86 适用于 32 位系统。就是这样。

或者您可以通过编码(动态)加载库

public static void loadOpenCV_Lib() throws Exception {
// get the model
String model = System.getProperty("sun.arch.data.model");
// the path the .dll lib location
String libraryPath = "C:/opencv/build/java/x86/";
// check if system is 64 or 32
if(model.equals("64")) {
libraryPath = "C:/opencv/build/java/x64/";
}
// set the path
System.setProperty("java.library.path", libraryPath);
Field sysPath = ClassLoader.class.getDeclaredField("sys_paths");
sysPath.setAccessible(true);
sysPath.set(null, null);
// load the lib
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
}

关于java - 仅测试 src 文件夹中的 Eclipse Java OpenCV unsatisfiedLinkError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35704363/

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