2017-04-25 33 views
0

我米使用下行家Tess4J,我已經使用了POM依賴一切都在倉庫的.m2下載好,我也從網上下載源鍛造的tess4j JNA包裝。但是什麼都這樣,我還在原地收到此異常:tess4j JNA UnsatisfiedLinkError

Looking in classpath from [email protected] for /com/sun/jna/win32-x86-64/jnidispatch.dll 
Found library resource at jar:file:/C:/Users/user/.m2/repository/net/java/dev/jna/jna/4.1.0/jna-4.1.0.jar!/com/sun/jna/win32-x86-64/jnidispatch.dll 
Looking for library 'libtesseract305' 
Adding paths from jna.library.path: C:\Tess4J\lib\win32-x86-64;C:\Tess4J\lib;C:\Users\user\AppData\Local\Temp\tess4j\win32-x86-64 
Trying C:\Tess4J\lib\win32-x86-64\libtesseract305.dll 
Adding system paths: [] 
Trying C:\Tess4J\lib\win32-x86-64\libtesseract305.dll 
Looking for lib- prefix 
Trying liblibtesseract305.dll 
Looking in classpath from [email protected] for libtesseract305 
Found library resource at jar:file:/C:/Users/user/.m2/repository/net/sourceforge/tess4j/tess4j/3.3.1/tess4j-3.3.1.jar!/win32-x86-64/libtesseract305.dll 

Exception in thread "main" java.lang.UnsatisfiedLinkError: Le module spécifié est introuvable. 

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 com.mycompany.mavenproject1.NewClass.main(NewClass.java:20) 

我試圖-Djna.library.path添加到我的libtessract305.dll但沒有成功

我應該怎麼辦?

+1

「時拋出的Java虛擬機無法找到一個方法的適當本地語言定義聲明本地人。」由javadocs判斷你沒有其他選擇。嘗試運行在詳細模式下的JVM,看看它會告訴您正在尋找本地庫。你的最後一句話沒有多大意義 – efekctive

+2

添加Java命令行選項'-Djna.debug_load = TRUE'上看到JNA查找庫。確保'-Djna.library.path'指向*目錄*,而不是文件。 – cubrr

+0

@cubrr我因爲在我的win10華碩添加日誌到我的兩臺電腦工作正常和負載做得很好,但在我的第二個電腦的win7是不是,我更新了我的問題。你有什麼主意嗎? –

回答

0

該解決方案是爲我工作,正方體或tess4j是可靠的,以vs2015正如我在一些線程沒有發現不vs2013。我所做的只是安裝Visual C++ 2015 Redistributable Packages。它工作正常

感謝您的幫助