java声明dll函数需要使用关键字native声明,jni.h头文件在JDK安装目录\include\下,jni_md.h头文件在JDK安装目录\include\win32下,可将这两个文件复制到C/C++项目里。
Java代码:
package com.pag.dev;
public class Native{
//C dll函数说明
public native void Function();
static{
//加载dll
System.Load("dll文件路径");
}
}
C中Native函数命名规则为:Java_(包名)_(类名)_(方法名),使用JNIEXPORT和JNICALL修饰。
C代码:
#include "jni.h"//引入jni头文件
//声明java里调用的函数
JNIEXPORT void JNICALL Java_com_pag_dev_Native_Function(JNIEnv *env, jobject jobj)
{
//函数实现代码
}
Java调用代码:
import com.pag.dev;
public class JavaCall{
public static void Main(String[] arg){
//创建类
Native ncall = new Native();
//调用
ncall.Function();
}
}
0 Comments