一、經過JNI生成C調用的頭文件:Java源碼: java
import java.io.File; public class Test { static { System.load("D:" + File.separator + "Hello.dll"); } public native static void Hello(); public static void main(String[] args) { Hello(); //System.out.print("aaa"); } }
二、生成頭文件:cmd 進入java文件所在的位置,執行javah:ios
三、建立項目:spa
四、文件結構3d
五、複製頭文件,到程序目錄下:code
1)經過JNI生成的頭文件 Test.hblog
2)jdk1.7.0_80\include\jni.hcmd
3)jdk1.7.0_80\include\win32\jni_md.h源碼
六、添加頭文件到項目:io
七、修改Test.h頭文件,改成引號:編譯
八、新建cpp文件:
添加代碼:
#include <iostream> #include "Test.h" using namespace std; JNIEXPORT void JNICALL Java_Test_Hello(JNIEnv *, jclass) { cout << "Hello World!" << endl; }
九、編譯生成32位dll
十、編譯生成64位dll
設置64位
十一、把生成的DLL放在D盤,執行第一步寫的Java代碼,結果以下: