2012-05-08 52 views
0

我有一個dll,我想在我的java代碼中使用。 我聲明一個函數爲本地函數,返回類型爲bool(c)。 正如我在JNI文檔中看到的,java'boolean'應該在c代碼中映射爲'jboolean'。但問題是我沒有c代碼,只有dll。JNI UnsatisfiedLinkError和類型解析

我的問題是UnsatisfiedLinkError,但我不知道還有什麼可能是錯的。

如果是問題,我應該寫另一個c-wrapper嗎?

(我知道,這個例外是已經討論了很多次,但根據我的情況我沒找到一些有用的信息)

UPD: 也許有問題再方式使用DLL?

回答

1

您不能直接從Java使用任意的DLL。你必須聲明一個本地Java方法,爲它編寫JNI,並從JNI代碼中調用DLL方法。