idea使用javah一键编译JNI的.头文件

.h头文件中方法命名规范需要用到包名,所以,使用javah编译jni时工作目录一定要是在包名父目录中,否则Exception in thread “main” java.lang.IllegalArgumentException: Not a valid class name:

  • at com.sun.tools.javac.api.JavacTool.getTask(JavacTool.java:129)
    at com.sun.tools.javac.api.JavacTool.getTask(JavacTool.java:107)
    at com.sun.tools.javac.api.JavacTool.getTask(JavacTool.java:64)
    at com.sun.tools.javah.JavahTask.run(JavahTask.java:503)
    at com.sun.tools.javah.JavahTask.run(JavahTask.java:329)
    at com.sun.tools.javah.Main.main(Main.java:46)

被右键编译的类名

$FileClass$

一般默认包名父目录是这样,如果是idea创建的项目就用下面固定写法就行,其它的根据需求自定义:

$ProjectFileDir$\app\src\main\java

贴几张图,

步骤一:
在这里插入图片描述
步骤二:

在这里插入图片描述
步骤三:
在这里插入图片描述

OK

猜你喜欢

转载自blog.csdn.net/qq_41490274/article/details/83180891