eclipse下编译jni的配置
2014-03-25 17:11
295 查看
JNI调用要做三件事,一使用javah命令生成C头文件,二编写完成本地方法生成可调用的DLL文件(Windows平台),三java类中加载这个dll文件。
Eclipse环境下自然不能忍受手动敲命令这么重的体力活了。我们首先要做的就是配置一个Javah命令:
打开"External Tools Configurations",这个功能在哪?告诉你在工具栏Run旁边那个有个按钮^_^,界面如图:
这里指定头文件输出的目录是项目的jni目录下,这个可自行设置。现在只需要编写一个带有native的类,然后执行这个命令即可生成头文件了。
接下来是编写本地方法,生成的本地库文件。C/C++编译器可自行选择,如果使用微软visual studio,从开始菜单打开vs的命令行输入编译命令cl -I c:\java\jdk1.7\include -I
c:\java\jdk1.7\include\win32 -LD E:\workspace\JniDemo\jni\HelloNative.c -FeE:\workspace\JniDemo\jni\HelloNative.dll。
-LD是要生成DLL文件,-Fe是指定dll文件名,同时这里还需指定jdk中jni.h文件的路径,否则是编译不了的。当然你也可以把这几个文件拷贝到你的.c文件相同目录。
生成好的dll文件放在项目的根目录下,否则会出现java加载不到dll的异常:java.lang.UnsatisfiedLinkError: no XXX in java.library.path。可是每次都要拷实在麻烦啊,当然还有解决之道了,我们可以配置项目的Build Path,打开Build Path配置Source选项卡,展开src目录下有个Native library location将目录指定要我们dll生成的目标文件夹即可。
Eclipse环境下自然不能忍受手动敲命令这么重的体力活了。我们首先要做的就是配置一个Javah命令:
打开"External Tools Configurations",这个功能在哪?告诉你在工具栏Run旁边那个有个按钮^_^,界面如图:
这里指定头文件输出的目录是项目的jni目录下,这个可自行设置。现在只需要编写一个带有native的类,然后执行这个命令即可生成头文件了。
接下来是编写本地方法,生成的本地库文件。C/C++编译器可自行选择,如果使用微软visual studio,从开始菜单打开vs的命令行输入编译命令cl -I c:\java\jdk1.7\include -I
c:\java\jdk1.7\include\win32 -LD E:\workspace\JniDemo\jni\HelloNative.c -FeE:\workspace\JniDemo\jni\HelloNative.dll。
-LD是要生成DLL文件,-Fe是指定dll文件名,同时这里还需指定jdk中jni.h文件的路径,否则是编译不了的。当然你也可以把这几个文件拷贝到你的.c文件相同目录。
生成好的dll文件放在项目的根目录下,否则会出现java加载不到dll的异常:java.lang.UnsatisfiedLinkError: no XXX in java.library.path。可是每次都要拷实在麻烦啊,当然还有解决之道了,我们可以配置项目的Build Path,打开Build Path配置Source选项卡,展开src目录下有个Native library location将目录指定要我们dll生成的目标文件夹即可。
相关文章推荐
- Windows7 下Eclipse集成Cygwin配置Android NDK环境编译JNI库(1)
- Windows7 下Eclipse集成Cygwin配置Android NDK环境编译JNI库(1)
- eclipse配置NDK自动编译jni中C/C++文件,并打包的方法
- android studio 和 eclipse jni的配置和编译
- mac eclipse 配置ndk编译jni
- 配置Eclipse自动编译NDK/JNI
- JNI NDK (2)-- 在Eclipse中配置NDK,编译C/C++源码
- Windows7 下Eclipse集成Cygwin配置Android NDK环境编译JNI库(1)
- eclipse中编译jni遇到的问题:Unresolved inclusion: <jni.h>
- ubuntu下编译android jni到so库的mk文件配置
- eclipse中创建NDK和JNI开发环境最简单配置方法
- eclipse配置ros cakin编译环境
- JMeter二次开发(1)-eclipse环境配置及源码编译
- Android JNI开发之NDK环境配置(eclipse)
- CentOS 6.4中升级编译安装GCC 4.8.1 + GDB 7.6.1 + Eclipse 以及Kdump配置
- linux下eclipse构建并编译android一个简单jni项目
- eclipse编译配置
- Eclipse——配置NDK自动编译环境
- 不使用Cygwin,在eclipse中快速开发JNI,一键生成C头文件.h,以及一键使用NDK交叉编译
- Android:Eclipse配置NDK自动编译