1、创建一个Java文件(HelloWorld.java)。
class HelloWorld {
static {
System.loadLibrary("HelloWorld");
}
private native void print();
public static void main(String args[]) {
new HelloWorld().print();
}
}
2、使用javac命令编译该java文件,在终端输入"javac HelloWorld.java"。生成HelloWorld.class.
3、使用javah命令生成头文件。在终端输入"javah -jni HelloWorld", 生成HelloWorld.h
4、使用本地方法实现头文件中的方法。
#include <jni.h>
#include <stdio.h>
#include "HelloWorld.h"
JNIEXPORT void JNICALL Java_HelloWorld_print
(JNIEnv *env, jobject obj)
{
printf("HelloWorld JNI!\n");
return;
}
5、用gcc编译生成so文件。
gcc -shared -I /home/xl/java/jdk1.5.0_22/include -I /home/xl/java/jdk1.5.0_22/include/linux -I /usr/include HelloWorld.c -o libHelloWorld.so