JAVA-JNI java程序调用c/c++程序

Posted 爱白菜的小昆虫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

 

以上是关于JAVA-JNI java程序调用c/c++程序的主要内容,如果未能解决你的问题,请参考以下文章

在 Java Spring Maven Web 应用程序中调用 C/C++ 函数

专业|程序|作业|项目|Code|代写|C|C++|Java|Matlab|C#|JS|留学生

用Swig将c/c++程序转为java代码(使用swig实现java调用cc++的方法)

Structure.List 线性表 - 专业|程序|作业|项目|Code|代写|C|C++|Java|Matlab|C#|JS|留学生

Java JNI机制

第01课:调试信息与调试原理