第一步:使用javac命令编译java文件,生成class文件
javac Test.java
第二步:使用javah命令生成头文件
javah -jni 包名.类名
注意:没有.class 而且 如果有包名的话 记得要把包名也写上
例:
文件路径:

文件所在的包,及内容 有native关键字声明的方法才会调用DLL库

命令行:

之后会在CD的目录下生成一个 包名_类名.h的头文件夹

第三步:创建dll动态链接库项目(这里用的是vs2017、怎么安装自行百度)


创建好的DLL项目:

第四步:在C/C++项目中导入头文件
注意:此时还需要导入java的头文件 jni.h jni_md.h
jni.h 以及jni_md.h的路径在 java的安装位置下的include文件夹内 以及win32下


第五步:编写好程序后打包DLL库
根据java类生成的头文件:

C++代码

编译:


生成的dll文件路径:(这里我选择是是64位因为我的jdk是64的——根据自己需要来选择生成对应的文件)


第六步:将生成的dll文件放入System32下(64位放入SysWOW64下)或者放入项目文件中
ps:我这里放入文件中(访日System32下的可以跳过这一步)
1.新建一个lib文件夹放入dll文件

2.右键项目build Path ->Configure Build Path



最后一步: 加载dll文件并运行


本文详细介绍了如何使用Java通过JNI调用C++DLL库的步骤,包括编译Java源文件、生成JNI头文件、创建DLL项目、导入头文件、打包DLL库、加载并运行DLL文件等关键环节。
813

被折叠的 条评论
为什么被折叠?



