无法构建测试项目(tess4j)tesseract应用程序

时间:2016-03-15 06:57:22

标签: java netbeans tesseract tess4j

我已将tess4j测试应用程序配置为http://tess4j.sourceforge.net/tutorial/ 但是当我运行项目时,它会出现这个错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't obtain updateLastError method for class com.sun.jna.Native
at com.sun.jna.Native.initIDs(Native Method)
at com.sun.jna.Native.<clinit>(Native.java:148)
at net.sourceforge.tess4j.util.LoadLibs.getTessAPIInstance(Unknown Source)
at net.sourceforge.tess4j.TessAPI.<clinit>(Unknown Source)
at net.sourceforge.tess4j.Tesseract.init(Unknown Source)
at net.sourceforge.tess4j.Tesseract.doOCR(Unknown Source)
at net.sourceforge.tess4j.Tesseract.doOCR(Unknown Source)
at net.sourceforge.tess4j.Tesseract.doOCR(Unknown Source)
at tstest.Main.main(Main.java:22)
Java Result: 1

我无法找到任何与tesseract相关的评论,如果有人在这个项目中做过请帮忙。

这是我正在使用的示例代码:

import java.io.*;
import net.sourceforge.tess4j.*;

public class Main {

public static void main(String[] args) {
    File imageFile = new File(System.getProperty("user.dir") + "\\images\\1.png");
    Tesseract instance = Tesseract.getInstance(); //

    try {

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

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

1 个答案:

答案 0 :(得分:0)

您使用的是哪个JNA版本?你先建造它吗?如链接页面所述。

根据登录存储库https://github.com/twall/jna.git,方法updateLastError(int e)已于2013年3月删除(SHA1:enter image description here)。

找出JNA版本执行

java -jar jna.jar 

Java Native Access (JNA) API Version 4
Version: 4.2.1 (b0)
Native: 4.0.1 (1a6047467b59e8748f975e03016ce3d9)
Prefix: linux-x86-64

编辑这里发布了一个完整的简单示例:d8e8889d