如何用VS2008生成JNI的dll.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何用VS2008生成JNI的dll

Eclipse: 新建Java项目 然后新建类 代码 package test; public class Hello { public native void sayHello(); static { System.loadLibrary(qq);//这个就是你要生成的dll文件放在项目下就可以了 } public static void main(String[] args) { Hello h = new Hello(); h.sayHello(); } } 然后到bin文件夹下面 运行 test为包名 然后生成 查看test_Hello.h代码 /* DO NOT EDIT THIS FILE - it is machine generated */ #include jni.h /* Header for class test_Hello */ #ifndef _Included_test_Hello #define _Included_test_Hello #ifdef __cplusplus extern C { #endif /* * Class: test_Hello * Method: sayHello * Signature: ()V */ JNIEXPORT void JNICALL Java_test_Hello_sayHello (JNIEnv *, jobject);//这就是C要实现的接口 #ifdef __cplusplus } #endif #endif VS2008: 文件新建-项目-Vistal C++-Win32-win32项目 Next: 然后导入Javah –Jni生成的文件 右键项目属性-配置属性-c/c++常规 然后点击包含目录 将头文件之前jni生成的(test_Hello.h)导入 然后在头文件的选项下 选择qq .h的文件 删除没用的代码 在qq.h里面添加 #include jni.h #include test_Hello.h-这是我之前导入的头文件 添加test_Hello.h方法 JNIEXPORT void JNICALL Java_test_Hello_sayHello (JNIEnv *, jobject); 然后打开qq.cpp文件插入如下代码 #include stdafx.h #include zhou.h JNIEXPORT void JNICALL Java_test_Hello_sayHello (JNIEnv *, jobject) { printf(hello world!); }//方法实现 由于我们没有jni.h jni_md.h所以我们需要从java里面拿 在java目录下的include文件夹中把jni.h复制 再到win32文件夹下把jni_md.h复制到VS2008下VC的include里面 这时候要在vs2008下把菜单项改为release 然后右键项目生成不能点调试哦 然后就生成dll和lib文件啦 最后把生成的dll文件复制到Java项目目录下 点击运行啦

文档评论(0)

bm5044 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档