我有一個JNI dll以及一個在eclipse上創建的jar文件。JNI UnsatisfiedLinkError依賴庫
我想這個部署到另一臺機器,不能讓過去的例外
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\CcmAccess\CcmJNIBase.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Meth
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.sig.ccm.CcmBase.<clinit>(CcmBase.java:8)
at ReadTimeDomain.setupSample(ReadTimeDomain.java:24)
at ReadTimeDomain.main(ReadTimeDomain.java:97)
我還有一個程序,打印出的java.library.path和我已經驗證了這個dll依賴於DLL以及這個DLL在java.library.path中。
我已閱讀帖子,他們應該在當前目錄中,並且不起作用。
我已閱讀帖子,他們應該去在jre /斌,並得到相同的結果。
任何幫助,將不勝感激。
編輯:
如果我把所有的東西的路徑,並迫使classpath中只有jar文件和「」我得到的消息
Exception in thread "main" java.lang.UnsatisfiedLinkError: no CcmJNIBase in java.library.path
當我加入這個DLL的位置到路徑C:\ CcmAccess我得到完整的信息:
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\CcmAccess\CcmJNIBase.dll: Can't find dependent libraries
在機器上,這似乎工作我不得不要做的是添加相關的DLL到我的類路徑。
你在java.library.path中使用絕對路徑嗎? – gmarintes 2014-11-01 20:39:02