最近打算研究安卓JNI开发,因为以前学习过嵌入式开发,以及ios开发,对硬件和C语言还有一定研究,心中窃喜中~~…
从网上快速荡下来了jni的学习资料~~
但是在生成头文件和查看类签名过程中遇到了些问题
通过cmd来到项目路径的/bin/classes目录
使用命令:
javah com.test.TextJNI
在cmd窗口中提示:
错误:找不到“com.test.TextJNI”
通过查阅相关资料,应该是在系统环境中没有配置classpath路径,需要加入相关参数,以下是javah的用法:
用法:javah [选项] <类>
其中 [选项] 包括:
-help 输出此帮助消息并退出
-classpath <路径> 用于装入类的路径
-bootclasspath <路径> 用于装入引导类的路径
-d <目录> 输出目录
-o <文件> 输出文件(只能使用 -d 或 -o 中的一个)
-jni 生成 JNI样式的头文件(默认)
-version 输出版本信息
-verbose 启用详细输出
-force 始终写入输出文件
使用全限定名称指定 <类>(例
如,java.lang.Object)。
使用以下格式的命令就好了:
javah -classpath . -d F:/ -jni com.text.testJNI
-classpath . 指的是生成的.class文件的目录,因为当前已经在项目的/bin/classes路径所有填 .
-d 指的生成.h头文件的存放目录,这里我指定的是F盘的根路径,当然你可以填任何路径,最方便就填.也可以,表示当前路径
最后是jni的命令。
javap命令也一样,在使用的时候加上,classpath命令就好了,如:
javap -classpath . -s com.test.TestJNI
记录此博客用来提醒自己,希望也能帮到其他朋友