关于JNI技术的一个小例子

来源:互联网 发布:淘宝星级怎么算 编辑:程序博客网 时间:2024/04/28 21:35

环境vc2008+Myeclipsex+JDK1.6.0_02

 

1.在MyEclipse中新建工程JNITest,添加HelloJni.java代码如下

  public class HelloJni {  
    public native void displayHelloJni();  
 
    static {  
        System.loadLibrary("Test");  
    }  
 
    public static void main(String[] args) {  
        //System.out.println(System.getProperty("java.library.path"));  
        new HelloJni().displayHelloJni();  
    }  

2.根据上述代码生成class文件

3.在项目bin目录下,运行javah HelloJni,生成HelloJni.h文件

4.建立vc win32 dll 空项目.添加HelloJni.h文件,再添加HelloJni.cpp。代码如下

#include <jni.h>  
#include "HelloJni.h"  
#include <stdio.h>  

JNIEXPORT void JNICALL   
Java_HelloJni_displayHelloJni(JNIEnv *env, jobject obj)   
{  
 printf("Hello Dynamic Link Library has been calling!/n");  
 printf("Java_HelloJni_displayHelloJni method has been executed!/n");  
 return;  

5.将jdk1.6目录下的inlude内的如jni.h等等头文件,copy至vc/include目录中

6.然后生成dll,并将dllcopy至JNITest目录下,运行程序可成功调用