Ubuntu下的JNI入门

1.编写java代码
class HelloWorld {
public native void displayHelloWorld();

static {
System.loadLibrary("hello");
}

public static void main(String[] args) {
new HelloWorld().displayHelloWorld();
}
}



2.编译java程序
javac HelloWorld

3.使用javah生成c语言定义文件
javah -jni HelloWorld

4.使用c语言实现定义
#include<jni.h>
#include <stdio.h>
#include "HelloWorld.h"
JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld(JNIEnv *env,jobject obj) {
printf("Hello World!\n");
return ;
}


5.编译c语言
gcc gcc -shared -I ~/java/jdk1.6.0_12/include/ -I ~/java/jdk1.6.0_12/include/linux/ HelloWorld.c -o libhello.so


6.运行java
java -Djava.library.path=. HelloWorld

你可能感兴趣的:(java,linux,jni,ubuntu,gcc)