由于項目的需要,最近研究了java 調(diào)用DLL的方法,將如何調(diào)用的寫于此,便于日后查閱:
采用的方法是JNI: Java Native Interface,簡稱JNI,是Java平臺的一部分,可用于讓Java和其他語言編寫的代碼進行交互。
下面是從網(wǎng)上摘取的JNI工作示意圖:
總體說明:先在JAVA中建立一個類,通過javac生成.class,再由javah生成.h;然后將.h復(fù)制到VC下,由VC實現(xiàn)具體函,
并編譯通過后生成DLL,將DLL放入JAVA工程中使用,完畢。
下面說說具體步驟(含實例):
1、建java類:裝載DLL,聲明要使用DLL方法,具體實現(xiàn)由DLL負責(zé);代碼如下:
public class Java2cpp { static { System.loadLibrary("javaCallcpp"); } public native int DLL_ADD(int a,int b); //加 public native int DLL_SUB(int a,int b); //減 public native int DLL_MUL(int a,int b); //乘 public native int DLL_DIV(int a,int b); //除 public static void main(String args[]) { int sum = 0; Java2cpp test = new Java2cpp(); sum = test.DLL_ADD(2, 4); System.out.println("Java call cpp dll result:" + sum); } }