使用javah生成.h文件, 出现无法访问android.app,Activity的错误的解决
【问题】
当在Android项目路径下,使用javah指令生成.h文件时,javah -classpath bin/classes -d jni com.example.myhellojni.MainActivity
出现--->错误:无法访问android.app.Activity 找不到android.app.Activity的类文件。
其中 -classpath bin:表示类的路劲
其中 -d jni: 表示生成的头文件存放的目录
其中 com.example.hellojni.HelloJni 则是完整类名
【解决办法】
进入src目录,使用javah -d ../jni com.example.myhellojni.MainActivity 指令代替。
其中 -d:建立一个目录。
其中../jni :在上级目录的jni文件下生成头文件。
原理:.java文件也不用编译可以直接生成.h文件。
另:
无法访问android.app.Activity是说明没有引入android.jar包
可以看看java -h里面的具体说明。
其中有一个-bootclasspath参数 让他指向android.jar包
以下举个例子:javah -classpath bin/classes -bootclasspath D:\Environment\android-sdk-windows\android-sdk-windows\platforms\android-16\android.jar -d jni com.jm.promedia.SecondActivity
或:
或者也可以到src目录下 javah -d ../jni com.jm.promedia.SecondActivity,但它生成的文件不如上面详细。
其中-d是建立一个目录,把生成文件放进去