我在我的 Eclipse 项目中使用 tess4j.jar。当我在Eclipse上运行它时,我的项目工作正常,但是当我尝试运行导出的可运行 .jar 文件时,它总是由于“java.lang.UnsatisfiedLinkError: Unable to load library 'libtesseract302'”错误而失败。
我试图用类似帖子的解决方案来修复它,但没有任何效果。
- 将“libtesseract302”和“liblept168.dll”文件定位到“dll”文件夹中,并将其添加为源文件夹。
- 我正在运行 java 32 位并确认 dll 也是 32 位 dll。
错误日志:
Exception in thread "Thread-2" java.lang.UnsatisfiedLinkError: Unable to load library 'libtesseract302': Can't obtain InputStream for win32-x86/libtesseract302.dll
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:271)
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.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 brain.Main.startOCR(Main.java:292)
at brain.Main.getOcrResult(Main.java:251)