Linux环境java使用jni调用本地方法
干活前先把流程理清楚,先把工作场景,分析步骤
1.创建一个本地方法的java定义(就是native方法定义)
2.将java定义转化成c定义(c定义就是.h文件,就是头文件,头文件其实就是将各个.c文件中重复的声明、宏定义等提取出来放进一个文件中,便于其他.c文件共用这部分的代码)
3.实现c定义(.c文件引用c定义,然后将c定义中的方法实现了)
4.将c实现转化成链接库
5.加载链接库,调用本地方法触发链接库的实现
先查看本地方法的类,步骤1
/*** 调用本地方法的组件*/
public class NativeUtils {/*比大小*/public native int max(int i, int y);
}
编译生成字节码文件:javac NativeUtils.java,目录下多了.class文件,步骤2
编译生成头文件:javah NativeUtils,目录下多了.h文件
查看头文件
/* DO NOT EDIT THIS FILE - it is machine generated */
#include
/* Header for class NativeUtils */#ifndef _Included_NativeUtils
#define _Included_NativeUtils
#ifdef __cplusplus
extern "C" {
#endif
/** Class: NativeU
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
