JAVA中的JNI

来源:互联网 发布:python爬虫高级教程 编辑:程序博客网 时间:2024/05/18 20:10

第一 写*.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"

 

原创粉丝点击