tess4j for linux UnsatisfiedLinkError

时间:2015-02-17 10:18:50

标签: java linux dll tess4j

我正在使用tess4J api来处理ocr进程。我已经在Windows上成功部署了我的项目,但我坚持在linux ubunutu上运行该项目。根据我的研究,我必须使用.so文件而不是.dll文件用于linux。我的简单代码片段看起来像belove

import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;
import net.sourceforge.tess4j.util.PdfUtilities;

private static Tesseract instance;
    try {
            System.out.println(getPath());
            instance.setDatapath(getPath()+"/tessdata");
            result = instance.doOCR(file);
            System.out.println(result);
        } catch (Exception e) {
            logger.log(Level.INFO, e.getMessage(), e);
            throw new TesseractException(e);
        }

我有linux os的tessdata文件夹并将其放入类路径中并且有几个.so文件也将它放入类路径的文件夹中。 eglinux-x86v文件夹。

我的printstacktrace如下..

java.lang.UnsatisfiedLinkError: /tmp/tess4j.tmp/linux-x86/liblept.so: libjbig.so.0: cannot open shared object file: No such file or directory
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1965)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1890)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1851)
    at java.lang.Runtime.load0(Runtime.java:795)
    at java.lang.System.load(System.java:1062)
    at net.sourceforge.tess4j.util.LoadLibs.loadLibs(LoadLibs.java:127)
    at net.sourceforge.tess4j.util.LoadLibs.<init>(LoadLibs.java:71)
    at net.sourceforge.tess4j.util.LoadLibs.<clinit>(LoadLibs.java:38)
    at net.sourceforge.tess4j.TessAPI.<clinit>(TessAPI.java:40)
    at net.sourceforge.tess4j.Tesseract.init(Tesseract.java:286)
    at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:222)
    at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:171)
    at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:155)

请建议任何关于如何在linux平台上运行tess4j api的解决方案以及运行tess4j api要么是什么类型的文件.so或.dll。我将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:0)

我有同样的问题。我通过下载必要依赖项的编译包来解决它。在您的情况下,您应该下载Leptonica库,其中包含liblept.so。小心选择库的版本,并将其与tess4j依赖列表中提到的版本进行比较。