JNI使用--windows篇
本篇博文主要讲解JNI如何使用,对JNI本身的理论知识没有涉及很深。
ubuntu如何使用 JNI,请参考博客:https://blog.****.net/qq_28398393/article/details/90580796
一,环境:
操作系统:64位 win7
eclipse:Eclipse Committers Neon(java 64位),Eclipse(c/c++)
二,应用
1.在eclipse(java)中写一个java project
在java类中声明一个native方法
2.使用javah命令生成包含native方法定义的c/c++头文件
javac -h . Hello.java
头文件的内容如下:
3.利用eclipse(c/c++)生成c++动态库(eclipse本身不带编译器,需要添加mingw(一般默认是32位的))。
此时会有一个非常深的坑(生成的动态库是32位的,但是写java的eclipse(java)是64位的,java就无法调用32位的动态库,会出现Can't load IA 32-bit .dll on a AMD 64-bit platform。
可以重新选择mingw,选择64位的mingw, 链接:
https://pan.baidu.com/s/1tDU6uog28IUp9eAvXY2vaA 提取码:hlkj )
4,右键点击项目->选择build project,
会生成dll文件
5.将dll文件拷贝到 jdk目录下(我的目录是C:\Program Files\Java\jdk1.8.0_91)
参考文件:
https://blog.****.net/qq_37595787/article/details/84929088