JNA 簡介

什麼是 JNA?

Java Native Access(JNA) 是一個社群開發的庫,為 Java 程式提供了對本機共享庫的輕鬆訪問(Windows 上的 .dll 檔案,Unix 上的 .so 檔案……)

我怎麼用呢?

  • 首先,下載最新版本的 JNA 並在專案的 CLASSPATH 中引用其 jna.jar。

  • 其次,複製,編譯和執行下面的 Java 程式碼

出於本簡介的目的,我們假設使用的本機平臺是 Windows。如果你在另一個平臺上執行,只需將字串 msvcrt 替換為下面程式碼中的字串 c 即可。

下面的小型 Java 程式將通過呼叫 C printf 函式在控制檯上列印一條訊息。

CRuntimeLibrary.java

package jna.introduction;

import com.sun.jna.Library;
import com.sun.jna.Native;

// We declare the printf function we need and the library containing it (msvcrt)... 
public interface CRuntimeLibrary extends Library {

   CRuntimeLibrary INSTANCE =
       (CRuntimeLibrary) Native.loadLibrary("msvcrt", CRuntimeLibrary.class);

   void printf(String format, Object... args);
}

MyFirstJNAProgram.java

package jna.introduction;

// Now we call the printf function...
public class MyFirstJNAProgram {
    public static void main(String args[]) {
         CRuntimeLibrary.INSTANCE.printf("Hello World from JNA !");
    }
}

現在去哪兒了?

跳到另一個主題或跳轉到官方網站