![](/img/trans.png)
[英]IntelliJ java.lang.UnsatisfiedLinkError: C:\User\…\java_bridge.dll: Can't find dependent libraries
[英]Netbeans IDE: java.lang.UnsatisfiedLinkError: OBIDISC4J.dll: Can't find dependent libraries
我正在嘗試執行與 UHF 閱讀器集成相關的程序。 編程SDK(ID_ISC.SDK.Java-V4.7.0)已經由讀卡器廠商提供(我這里的讀卡器是飛格電子的ID ISC.MRU102-USB讀卡器)。 當我嘗試從此 SDK 運行示例項目時,出現以下錯誤:
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Program Files\OBID\OBIDISC4J.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1857)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at de.feig.FedmIscReader.<init>(Unknown Source)
at ISOHostSample.ISOHostSample.<init>(ISOHostSample.java:41)
at ISOHostSample.ISOHostSample.main(ISOHostSample.java:865)
我按照 SDK 中自述文件中給出的說明進行操作:
我已將所需的 .dll 文件和 .jar 文件 (OBIDISC4J.jar) 放在 Program Files 下的 OBID 文件夾中,並在 Path 環境變量中輸入了此路徑。
程序運行時導航到此路徑,但無法從中取出jar庫文件,從而拋出上述異常。
任何解決此問題的幫助將不勝感激。 謝謝
我很幸運使用“depends.exe”Dependency Walker 工具來具體了解它找不到哪些依賴庫。 最后通常是因為它們不在您的類路徑中。
DLL 需要位於應用程序的 CLASSPATH 上,這與 Path 環境變量不同。 由於“src”文件夾已經在類路徑上,我通常做的是在“src”中創建一個“native\\windows”或“native/linux”文件夾,並將我所有的 .DLL 或 .SO 庫放在那里。
如果由於某種原因不能將庫放在項目文件夾中,您可以在命令行上指定 java.exe 的類路徑:“java -classpath -jar MyJar.jar”
我遇到了同樣的問題。 我的解決方案是將所有 FEIG dll 復制到 java bin 路徑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.