第一个JNI程序
JNI(JavaNative Interface)Java本地接口,是Java提供给程序员用Java语言调用本地语言(C、C++)写的函数的一种方法。
下面简单的说一下怎样写第一个JNI程序。
package jni.hello;
/**
* 第一个JNI程序
* @author zyb
* @version 创建时间:2012-4-2 下午3:55:33
*/
public class HelloWorld {
static {
System.loadLibrary("HelloWorld"); // 加载动态链接库,不能加后缀
}
public native void hello(); // 本地方法声明
public static void main(String[] args) {
new HelloWorld().hello();
}
}
生成C或C++的头文件
用Visual Stadio新建一个Win32项目
将刚才生成的头文件放到项目中
在HelloWorld.cpp中加入如下代码:
#include "stdafx.h"
#include <stdio.h>
#include "HelloWorld.h"
JNIEXPORT void JNICALL Java_jni_hello_HelloWorld_hello(JNIEnv *env, jobject object)
{
printf("Hello JNI!");
}
设置VC的环境
工具-选项-项目和解决方案
加入最后两个包含文件。
按F7生成DLL文件,然后将生成的DLL文件复制到Java项目的bin目录下,运行
调用C的函数成功了。哈哈, 是不是很有意思呢。。。