<1>编写Java文件,指定本地方法
class HelloWorld ...{ public native void displayHelloWorld(); //声明本地方法 static ...{ System.loadLibrary("hello"); //加载hello库 } public static void main(String[] args) ...{ new HelloWorld().displayHelloWorld(); //调用库里的方法 }}<2>编译Java文件并产生本地方法头文件
javac HelloWorld.javajavah -jni HelloWorld<3>根据产生的HelloWorld.h头文件编写实现文件HelloWorld.c
#include <jni.h>#include "HelloWorld.h"#include <stdio.h>JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld(JNIEnv *env, jobject obj) ...{ printf("Hello world! "); return;}<4>编译C、C++源文件,产生libhello.so文件
cc -G -I/usr/java/include -I/usr/java/include/solaris HelloWorldImp.c -o libhello.so<5>指定动态链接程序此共享库文件的路径
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH<6>运行HelloWorld.class文件
java HelloWorld本人在Unix-Center上测试通过,希望你们测试也能成功。祝你们好运。