我刚刚从http://tess4j.sourceforge.net/下载了Tess4J并将其导入了netbeans。我正在关注this url,我正确地遵循了每个步骤,但是当我尝试执行时,却遇到了错误。

错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: The specified module could not be found.

    at com.sun.jna.Native.open(Native Method)
    at com.sun.jna.Native.open(Native.java:1759)
    at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:260)
    at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:398)
    at com.sun.jna.Library$Handler.<init>(Library.java:147)
    at com.sun.jna.Native.loadLibrary(Native.java:412)
    at com.sun.jna.Native.loadLibrary(Native.java:391)
    at net.sourceforge.tess4j.util.LoadLibs.getTessAPIInstance(LoadLibs.java:75)
    at net.sourceforge.tess4j.TessAPI.<clinit>(TessAPI.java:42)
    at net.sourceforge.tess4j.Tesseract.init(Tesseract.java:367)
    at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:280)
    at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:212)
    at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:196)
    at recognizer.Recognizer.main(Recognizer.java:17)
Java Result: 1

我搜索后发现,有人建议我更新到Visual Visual C++ Redistributable Packages for Visual Studio 2013,但结果无济于事,我仍然遇到同样的问题。我不知道我在下面做错什么是我的代码。

代码:
import java.io.*;
import net.sourceforge.tess4j.*;

public class Recognizer {
public static void main(String[] args) {
File imageFile = new File("image.jpg");
Tesseract instance = new Tesseract();//

try {

String result = instance.doOCR(imageFile);
System.out.println(result);

} catch (TesseractException e) {
System.err.println(e.getMessage());
}
}
}

最佳答案

似乎它没有加载本地Dll。

  • Tesseract DLL是使用VS2015构建的,因此依赖于Visual C++ 2015 Redistributable Packages。安装它。
  • Tesseract,Ghostscript和Leptonica Windows 32位和64位DLL分别嵌入在tess4j.jar和lept4j.jar中。因此,请确保您将它们放在类路径上。
  • 确保在类路径上具有所有依赖项库(可以在Your_downloaded_Tess4J_folder\lib中找到这些库)
  • 确保在类路径上具有“tessdata”文件夹(可以在Your_downloaded_Tess4J_folder中找到“tessdata”文件夹)。
    请阅读Tess4J Tutorial以获得更好的理解。
  • 关于java.lang.UnsatisfiedLinkError : The specified module could not be found,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43522582/

    10-10 21:40