首页 > 解决方案 > in thread "main" java.lang.UnsatisfiedLinkError: no jnilept in java.library.path

问题描述

I have created a project for OCR

TessBaseAPI instance =  new TessBaseAPI();
instance.Init("C:\\TIAA Info\\tessdata","eng");
PIX image = lept.pixRead("C:\\TIAA Info\\tessdata\\test.png");
instance.SetImage(image);
BytePointer bytePointer = instance.GetUTF8Text();
String output = bytePointer.getString();
System.out.println(output);

After executing , I am getting following error

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jnilept in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1122)
    at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:1302)
    at org.bytedeco.javacpp.Loader.load(Loader.java:1043)
    at org.bytedeco.javacpp.Loader.load(Loader.java:935)
    at org.bytedeco.javacpp.lept.<clinit>(lept.java:10)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at org.bytedeco.javacpp.Loader.load(Loader.java:994)
    at org.bytedeco.javacpp.Loader.load(Loader.java:935)
    at org.bytedeco.javacpp.tesseract$TessBaseAPI.<clinit>(tesseract.java:3682)
    at imageTestProj.ReadDataFromImage.main(ReadDataFromImage.java:19)
Caused by: java.lang.UnsatisfiedLinkError: no liblept in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1122)
    at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:1302)
    at org.bytedeco.javacpp.Loader.load(Loader.java:1021)
    ... 8 more

I have used following jars

标签: java

解决方案


我遇到了同样的错误,原来只是我默认为 32 位项目,示例是 64 位。改变了这一点,它工作得很好。


推荐阅读