启动ubuntu18.04,使用Inteliji ieda创建java工程,命名为jniDemo,新建包名com.terrence.jni,在包名下创建JNIDemo.java,定义native方法。
1、打开ubuntu命令行,切换路径到JNIDemo src目录下
2、直接执行javah命令
javah -classpath . -d …/jni -jni com.terrence.jni.JNIDemo
-classpath .代表当前路径下
-d 代表生成jni文件存放的地方
-jni 代表jni类,完整路径
网上也有直接通过
javah -jni com.terrence.jni.JNIDemo
命令成功生成头文件,我试了一下,这个命令在类存放在src目录下,没有包名是可以的,但是如果jni带包名是不可行的。为了日后使用方便,我把写了一个简单的shell脚本。可以直接切换到src目录下,直接执行
./jni_create.sh
最后附上完整demo,感兴趣的朋友可以下载下来使用。