标签:call nat load off 关键词 lib 编译 new 编写
1、编写java程序
public class HelloWorld {
public native void displayHelloWorld();//所有native关键词修饰的都是对本地的声明
static {
System.loadLibrary("hello");//载入本地库
}
public static void main(String[] args) {
new HelloWorld().displayHelloWorld();
}
}
2、编译
javac HelloWorld.java
3、生成扩展名为h的头文件
javah HelloWorld
4、编写本地方法实现和由javah命令生成的头文件里面声明的方法名相同的方法。
#include"jni.h"
#include"HelloWorld.h"
//#includeotherheaders
JNIEXPORT void JNICALL
Java_HelloWorld_displayHelloWorld(JNIEnv*env,jobject obj)
{
printf("Helloworld!\n");
return;
}
5、编写pro文件
TARGET = hello TEMPLATE = lib LANGUAGE = c++ CONFIG -= qt CONFIG += warn_off dll INCLUDEPATH += $$(java_home)\include $$(java_home)\include\win32 HEADERS = HelloWorld.h SOURCES = HelloWorldImpl.c
6、编译动态链接库
qmake nmake
7、运行程序
java HelloWorld
即可在控制台进行输出。
Java固有接口JNI(Java Native Interface)之HelloWorld
标签:call nat load off 关键词 lib 编译 new 编写
原文地址:http://www.cnblogs.com/yuan1164345228/p/7397761.html