我发现已经有5个答案,尝试了所有这些答案,并没有得到它的工作。
Env:Ubuntu 12.04 / Indigo
运行 – >外部工具 – >外部工具configuration…
创build新的程序位置:/ usr / bin / javah / * $ javah给出/ usr / bin / javah * /
工作目录:$ {workspace_loc:/ MyProject / bin / classes}
属性:-d $ {workspace_loc:/ MyProject / jni} com.myproject.MyActivity
运行结果:找不到“com.myproject.MyActivity”的类文件
从terminal运行得到相同的结果maxim @ ubuntu:〜/ workspace / MyProject / bin / classes $ javah -jni com.myproject.MyActivity
错误:无法访问android.app.Activity的类文件android.app.Activity未findmaxim @ ubuntu:〜/ workspace / MyProject / bin / classes $
安装了SDK / NDK,添加了外部path。 如何添加缺less的部分? 谢谢大家。
7月3日编辑
移动本地lib加载到一个单独的类解决了这个问题
我也有一个非常类似的问题在Linux上。 事实证明,我没有这样做在正确的文件夹。
尝试阅读并看看是否有帮助: 在Linux上使用javah 。
在Android开发者的回答中也提到了这个帖子的详细说明:
正如您通过下面的屏幕截图所看到的,设置外部工具,如下所示:
在Eclipse ADT中,单击“运行”,将鼠标悬停在菜单的最后一个选项 – “外部工具”上,然后选择“外部工具配置”
设置路径如下:
2.1。 位置:无论你在哪里安装Java C:\ Program Files \ Java \ jdk1.7.0_13 \ bin \ javah.exe
2.2。 工作目录:您项目的/ bin / classes /目录$ {workspace_loc:/ MyProject / bin / classes}
2.3。 参数:-jni $ {java_type_name}
点击运行(注意你必须选择java类)
使用你的文件浏览器,检查/ bin / classes /目录 – 你应该在那找到.h头文件。
希望这有助于某人。
基于恩克的回答,我为了方便添加了更多的论据。
1.你不必使用“-classpath”来正确设置工作目录(你可以忽略工作目录的设置)。
2.您可以从Eclipse中的集成控制台获得详细信息。
3.您可以使用“-d”参数指定输出目录。
*不要忘记在此图中替换项目目录名称(“MyProject”)