线程“main”中的异常java.lang.UnsatisfiedLinkError:无法加载库’libtesseract302’:找不到指定的模块

我正在运行Eclipse,我知道这是一个常见问题(尝试做一些JNA),但我在网上发现的所有修复都不起作用:

>该库是32位,但是当我执行sun.arch.data.model的getProperty时它是32,所以这不是问题.
>我已经尝试将我的dll放在sclipse文件夹中,在我的eclipse项目的根目录中,但没有任何作用.
>我尝试过做System.setProperty(“jna.library.path”,“c:/libtesseract302.dll”);然后把我的dll放在那里,但那不起作用.

这是我用来尝试包含本机库的代码:

public static final TessAPI INSTANCE = (TessAPI) Native.loadLibrary("libtesseract302", TessAPI.class);
最佳答案
你需要另一个dll,它是一个libtesseract302依赖:“liblept168.dll”
(可以在这里找到:http://code.google.com/p/tesseract-ocr/source/browse/trunk/vs2008/lib/liblept168.dll?r=553)

尝试这样的事情:

将两个dll文件放在同一个文件夹中(让我们说tesseractlib)

在您的代码中,在加载模块之前,添加:

System.setProperty("jna.library.path", "tesseractlib");

(顺便说一下,你也需要使用一个32位的jvm,这两个dll都是32位而不是64位的库,并且无法加载到64位的jvm中)

转载注明原文:线程“main”中的异常java.lang.UnsatisfiedLinkError:无法加载库’libtesseract302’:找不到指定的模块 - 代码日志