第一 写*.java文件
public class testdll
{
static{
System.loadLibrary("goodluck");
}
public native static int get();
public native static void set(int i);
public static void main(String[] args)
{
testdll test = new testdll();
test.set(10);
System.out.println(test.get());
}
}
第二 javac testdll.java
第三 javah testdll,生成testdll.h
第四 写*.cpp文件
#include "C:/Java/jdk1.6.0_21/include/jni.h"
#include "C:/Java/jdk1.6.0_21/include/win32/jni_md.h"
#include "testdll.h"
int i = 0;
JNIEXPORT jint JNICALL Java_testdll_get(JNIEnv *, jclass)
{
return i;
}
JNIEXPORT void JNICALL Java_testdll_set(JNIEnv *, jclass, jint j)
{
i = j;
}
最后,通过vc编译成dll文件
1.在 Visual C++ 中创建一个 Win32 DLL 项目,并将 .c 和 .h 文件添加到这个项目中。
2.在 Tools 下拉式菜单的 Options 设置下设置 JDK 的 include 目录。
#include "C:/Java/jdk1.6.0_21/include/jni.h"
#include "C:/Java/jdk1.6.0_21/include/win32/jni_md.h"