JAVA-JNI java程序调用c/c++程序
目的:写c/c++函数,让java调用
java代码
1.创建HelloJNI.java文件->编写代码如下->cmd中javac HelloJNI.java获取HelloJNI.class文件
public class HelloJNI { public native void display();//native申明函数是它语言实现 static {//表示静态语句块 System.loadLibrary("HelloDll");//表示加载动态链接库HelloDll库 } public static void main(String[] args) { new HelloJNI().display(); } }
2.在cmd中 javah HelloJNI 获取HelloJNI.h文件
下面是c/c++程序
1.创建HelloDll编译动态库项目
2.选择dll 空项目
3.添加HelloDll.h、HelloDll.cpp
4.将HelloJNI.h的内容复制到HelloDll.h文件中
5.将安装java的jdk中的jni.h、jawt_md.h、jni_md.h三个头文件复制到HelloDll项目中。
jni.h位置
jawt_md.h、jni_md.h位置
复制到HelloDll项目文件中
6.需要配置下头文件路径项目鼠标右键->属性->VC++项目->包含目录->../HelloDll;
7.在HelloDll.cpp中实现函数
8.生成HelloDll.dll库文件
运行程序
1.将HelloDll.dll库文件放到HelloJNI.class文件目录下
2.在cmd中java HelloJNI