我已经找到了大约5个答案,尝试了所有答案并且没有让它发挥作用。
环境:Ubuntu 12.04 / Indigo
运行 - >外部工具 - >外部工具配置...
制作新计划 位置:/ usr / bin / javah / * $ javah给出/ usr / bin / javah * /
工作目录:$ {workspace_loc:/ MyProject / bin / classes}
属性:-d $ {workspace_loc:/ MyProject / jni} com.myproject.MyActivity
RUN的结果:找不到'com.myproject.MyActivity'的类文件
从终端运行会得到相同的结果 maxim @ ubuntu:〜/ workspace / MyProject / bin / classes $ javah -jni com.myproject.MyActivity
错误:无法访问android.app.Activity 找不到android.app.Activity的类文件 maxim @ ubuntu:〜/ workspace / MyProject / bin / classes $
安装了SDK / NDK,添加了外部路径。 如何添加缺件?谢谢大家。
7月3日编辑
将本机lib加载移动到单独的类解决了问题
答案 0 :(得分:9)
在{+ 3}}上阐述了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中/类}
2.3。参数: -jni $ {java_type_name}
点击运行(请注意,您必须选择java类)
使用您的文件浏览器,检查/ bin / classes /目录 - 您应该在那里找到.h头文件。
希望这有助于某人。
答案 1 :(得分:2)
我在linux上也有类似的问题。事实证明我没有在正确的文件夹上这样做。
尝试阅读它并查看它是否有帮助:Using javah on linux。
答案 2 :(得分:1)
根据恩克的回答,我为方便起见加了更多的论据
1.您不必使用“-classpath”正确设置工作目录。(您可以忽略图片中的工作目录设置。)
2.您可以从Eclipse中的集成控制台获取详细信息
3.您可以使用“-d”参数指定输出目录
*不要忘记替换此图片中的项目目录名称(“MyProject”)