总结JNI编程步骤

创建JNI类

在JNI类里面声明需要加载的dll

static {
    System.loadLibrary("JNIDLL");
}

方法在JNI类里面声明为native

public native void displayImg();

借助javah生成对应头文件

配置Idea的extension tool, 一键生成JNI头文件,或者敲命令生成JNI头文件(javah)
配方:

Program: $JDKPath$/bin/javah

Parameters: -jni -classpath $OutputPath$ -d ./jni $FileClass$

Working directory: $ProjectFileDir$

注意,使用javah前必须先编译一边,否则生成的头文件是空的。因为javah接收的是.class

写C++代码,编译成dll

根据生成的头文件,实现对应的C++文件,然后用gcc编译成dll

或者用vs新建win32 DLL工程,导入刚刚的头文件,新建cpp文件实现。

将jni.h的路径(%JAVA_HOME%\include\win32; %JAVA_HOME%\include)加入项目的“包含目录”.

编译运行,得到dll文件。

注意编译的时候对应jdk的版本选择64位或者32位编译,否则Java调用会出错。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值