这两天在搞NDK开发,JNI的头文件进行编译的时候,要跑到对应的class文件路径下(通常是工程的bin目录),进行编译生成,很是不便,也容易出错,所以考虑在Eclipse中作为外部工具引入,所以便查了下资料,现记录下来。

方法是:

1、在Eclipse环境下,打开下图中的最右边那个按钮。

2、新建一个Program,写上名字比如“javaH”,然后填写下面几项内容:

2.1、Location:把JDK下面的javaH.exe的全路径填进来。

2.2、Working Directory:

  1. ${project_loc}/bin

${project_loc}为在Eclipse环境下的变量,是工程路径的意思,定位到该路径的bin目录下,也就是classes文件存放的路径。

2.3、参数:

  1. Arguments: -classpath .;./classes -d "${project_loc}/jni" -jni ${java_type_name}

-classpath设定为”.;./classes“,意思是当前路径,这样可以让你需要编译的类中引用到的其他类也能被找到。

-d设定为”${project_loc}/jni“,也就是编译出来的H文件生成到工程下面的jni文件夹去。

${java_type_name}是需要编译的类名。

3、跑到Eclipse工程中选中一个需要编译的类,然后按这个按钮试试。是不是在你的jni文件夹下生成了?

末了,补充一句,在命令行下标准的编译命令为下述:

  1. javah -classpath A -d B -jni C

A:class文件的路径

B:H文件的生成路径

C:类的全称

在Eclipse中设置进行JNI的头文件编译方法(转 http://blog.csdn.net/mirkerson/article/details/17187109)的更多相关文章

  1. JVM中java类的加载时机(转载:http://blog.csdn.net/chenleixing/article/details/47099725)

    Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的加载机制.类从被加载到虚拟机内存中开始,到卸载出内 ...

  2. 快速掌握 Android Studio 中 Gradle 的使用方法 [转http://blog.csdn.net/feelang/article/details/41783317]

    Gradle是可以用于Android开发的新一代的 Build System, 也是 Android Studio默认的build工具. Gradle脚本是基于一种JVM语言 -- Groovy,再加 ...

  3. git中利用rebase来压缩多次提交 ----- 原文:https://blog.csdn.net/itfootball/article/details/44154121

    之前我们用git merge –squash来将分支中多次提交合并到master后,只保留一次提交历史.但是有些提交到github远程仓库中的commit信息如何合并呢? 使用下面的命令,最后一个数字 ...

  4. PL/SQL常用设置 可看引用位置更清晰直观 引自:http://blog.csdn.net/xiaoqforever/article/details/27695569

    引自:http://blog.csdn.net/xiaoqforever/article/details/27695569 1,登录后默认自动选中My Objects 默认情况下,PLSQL Deve ...

  5. 基于eclipse的mybatis映射代码自动生成的插件http://blog.csdn.net/fu9958/article/details/7521681

    基于eclipse的mybatis映射代码自动生成的插件 分类: JAVA 数据库 工具相关2012-04-29 00:15 2157人阅读 评论(9) 收藏 举报 eclipsegeneratori ...

  6. ubuntu下设置jupyter notebook 2017年07月29日 19:28:34 小旋锋 阅读数:8329 标签: ubuntu 更多 个人分类: python 二三事 来源:http://blog.csdn.net/suzyu12345/article/details/51037905 Ipython Notebook现在已经改名为Ipython jupyter,是最知名最好用的

    ubuntu下设置jupyter notebook     来源:http://blog.csdn.net/suzyu12345/article/details/51037905 Ipython No ...

  7. R语言中的正则表达式(转载:http://blog.csdn.net/duqi_yc/article/details/9817243)

    转载:http://blog.csdn.net/duqi_yc/article/details/9817243 目录 Table of Contents 1 正则表达式简介 2 字符数统计和字符翻译 ...

  8. 数组中&a与&a[0]的区别 转载自http://blog.csdn.net/FX677588/article/details/74857473

    在探讨这个问题之前,我们首先来看一道笔试题,如下: [摘自牛客网]下列代码的结果是:(正确答案是 C) main() { int a[5]={1,2,3,4,5}; int *ptr=(int *)( ...

  9. 浏览器中的data类型的Url格式,data:image/png,data:image/jpeg!(源自:http://blog.csdn.net/roadmore/article/details/38498719)

    所谓"data"类型的Url格式,是在RFC2397中 提出的,目的对于一些“小”的数据,可以在网页中直接嵌入,而不是从外部文件载入.例如对于img这个Tag,哪怕这个图片非常非常 ...

随机推荐

  1. Excel2013 破解(编辑工作表受保护)密码

    在日常工作中,大家有时会遇到过这样的情况:使用Excel编制的报表.表格.程序等,在单元格中设置了公式.函数等,为了防止其他人修改您的设置或者防止您自己无意中修改,您可能会使用Excel的工作表保护功 ...

  2. 【Java】LinkedBlockingQueue、PriorityQueue and ConcurrentLinkedQueue

    1.LinkedBlockingQueue: 基于链接节点的可选限定的blocking queue . 这个队列排列元素FIFO(先进先出). 队列的头部是队列中最长的元素. 队列的尾部是队列中最短时 ...

  3. 练习1 Just Java

    任务:做这样一个界面,选择数量,自动计算价格.超级简单.. <?xml version="1.0" encoding="utf-8"?> <a ...

  4. WPF 系列学习

    WPF CheckBox 自定义样式 给Button设置ToolTip 圆角Button 样式

  5. <悟道一位IT高管20年的职场心经>笔记

    1. 你一定会在某个时候惊讶地发现,原来当初你曾经硬着头皮挨过来的日子对你是那么的珍贵.2. "'老板就是老板'.这一点,你可能会忘,他一定不会忘.'老板不会总是老板'.这一点,他可能会忘, ...

  6. [synergy]两台机器公用键盘鼠标

    两台机器公用键盘鼠标 如果是Linux: 下载synergy相关的deb包,然后

  7. JMX超详细解读<转>

    一.JMX的定义 JMX(Java Management Extensions)是一个为应用程序植入管理功能的框架.JMX是一套标准的代理和服务,实际上,用户可以在任何Java应用程序中使用这些代理和 ...

  8. 修复Windows10系统的注册表?

    在打开的管理员命令提示符窗口,输入如下命令: ———————————————————————————————— reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Mi ...

  9. Centos 5.2 下配置 php 的 json 扩展

    01.下载源文件包:   wget http://www.aurore.net/projects/php-json/php-json-ext-1.2.1.tar.bz2 02.解压文件包:   tar ...

  10. hbase 学习(十五)缓存机制以及可以利用SSD作为存储的BucketCache

    下面介绍Hbase的缓存机制: a.HBase在读取时,会以Block为单位进行cache,用来提升读的性能 b.Block可以分类为DataBlock(默认大小64K,存储KV).BloomBloc ...