介绍JNIjava原生接口,jni使java能够调用c\c++写的动态链接库。文章主要介绍和演示如何编写几个简单的jni接口,java直接调用,以及涉及到的一些工具和配置。环境eclipsecppeclipsejeecentos7前提g++编译cpp文件为动态链接库gcc编译c文件为动态链接库(略)java启动jvm时会加载动态链接库,上面编译好的链接库会放在/lib/目录,jvm启动时,默认会加载。要检查将加载哪些目录,请使用以下代码:System.out.println(System.getProperty("java.library.path"))主要步骤是:java定义jni接口javah生成c头文件c\c++实现生成头文件gcc\g++编译c\cpp文件配置动态链接库位置:/home/xxx/tmp/jdk1.8.0_301/bin/javah工作目录:${project_loc}参数:-classpath${project_loc}/target/classes-d${project_loc}/src/jni${java_type_name}修改刷新配置java文件JNI2.javapackagecom.fei.code;publicclassJNI2{publicstaticnativevoidprint();公共本机无效显示();publicnativevoidshowArgs(inti,Strings,char[]c);publicvoidrun(){System.out.println("runhello...");}publicstaticvoidmain(String[]args){System.loadLibrary("myjni");//System.out.println(System.getProperty("java.library.path"));打印();新的JNI2()。展示();新的JNI2()。showArgs(1,"你好",新字符[]{'a','b','c'});}}点击图标按钮生成文件com_fei_code_JNI2.h/*不要编辑这个文件-它是机器生成的*/#include
