解决javah生成c头文件时找不到android类库的问题

问题描述:

cmd下面进入工程的bin/classes下面,执行 javah xxx.xxx.A 生成头文件,

一般来说都是可以成功执行的,但是如果xxx.xxx.A类里面引用了android类库里面的类的话,就会报异常,如下图:




上面因为引用了android.graphics.Bitmap,所以导致生成头文件失败。

 

 

解决办法:

执行javah命令的时候,可以指定classpath,将需要的jar包引入进去就可以了。如下

javah -classpath D:\ide\android-sdk\platforms\android-22\android.jar;. -jni  javah xxx.xxx.A

这样就可以成功的编译了。

这里值得注意的是classpath后面一定要记得加上“.”,否则就找不到目标类了。


~%5Baf7j7dp.png)