簡體   English   中英

Netbeans IDE: java.lang.UnsatisfiedLinkError: OBIDISC4J.dll: 找不到依賴庫

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM