我有javah的问题,我已经阅读了大约4或5个stakcoverflow帖子,其中包含错误"已解决"但是任何事都适合我。
我的问题:
当我执行javah命令时,我有这个错误:
Error: cannot access android.support.v7.app.ActionBarActivity
class file for android.support.v7.app.ActionBarActivity not found
我尝试了什么:
这是我测试过的命令:
C:\Users\MyUser\workspace3\PruebaApp\jni\include>javah -classpath ../../bin/classes;C:\Users\MyUser\AppData\Local\Android\sdk\platforms\android-14\android.jar -o ACK.h com.test.prueba.ACK
我只用" /"尝试过相同的命令。并且只有" \"分离恐怖分子。
我已经尝试过android-11,android-14和android-21。
我尝试将以下外部广告添加到我的项目中: "机器人支撑-v4.jar"和" android-support-v7-appcompat.jar"
我试图用eclipse创建外部构建配置,例如:Javah Error android.app.Activity not found
工具我正在使用
我在Windows 8.1上使用eclipse juno。
我执行命令的文件夹是{project_dir} / jni / include。我已经从不同的文件夹中尝试过,正确地修改了命令。
包含本机函数的.java文件是" ACK.java"在包中:" com.test.prueba"
在项目中,我使用的android库是android 5.0.1
我该怎么办?提前谢谢。
答案 0 :(得分:9)
在java类中声明的本机方法足以生成JNI标头。在您的示例中,命令javah
的选项-classpath
不是很有用。假设com/test/prueba/ACK.java
是您处理以生成JNI标头的类。您可以将工作目录更改为{project_dir}\src
,执行命令
javah com.test.prueba.ACK
将在当前目录中创建相应的JNI头文件com_test_prueba_ACK.h
。
答案 1 :(得分:2)
您应该在classpath参数中编写android-support-v7-appcompat.jar
和android-support-v4.jar
的完整路径。
答案 2 :(得分:0)
请查看我的答案https://stackoverflow.com/a/52527212/2573138 它按照 alijandro所述的方式集成到Android Studio中。