2008年6月17日 星期二

[Java] JNI: UnsatisfiedLinkError 的解決方法

方法一: 使用 java.library.path 方式載入你的 dll

Step 1:

檢查你的 java 檔裡面, 有沒有

    static {
    System.loadLibrary("DLL 檔名"); // 不含附檔名
    }

Step 2:

無論你是不是 C++, 確實檢查 jni 產生出來的 .h 與 實做檔案是否一樣

 

方法二: 強迫指定 dll 位置

如果你還是找不到你的 dll , 那麼可以用 system.load 直接指定 dll 的絕對路徑, 強迫它載入.

作法如下:

static {
        // System.loadLibrary("FrameSync_api");
        System.load("c:\\FrameSync_api.dll");
     }

沒有留言:

張貼留言