ImageVerifierCode 换一换
格式:DOC , 页数:21 ,大小:900.04KB ,
资源ID:4186058      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4186058.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(手把手教你通过Eclipse工程配置调用JNI完全攻略.doc)为本站上传会员【人****来】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

手把手教你通过Eclipse工程配置调用JNI完全攻略.doc

1、当你找到并鬼使神差地打开这个博文的时候,我敢肯定你已经知道什么是JNI,基本概念就不粘贴了。 百度出来的JNI调用方法,前三页几乎毫不例外的都是几年前的资料,告诉你如何设立一大堆莫名其妙的参数、如何通过命令行加工出dll并调用出来的,遗憾的是笔主打开的那堆帖子,多少都有些操作上的出入,再一个笔主对嘿嘿的命令行窗口无爱,并且,例外的帖子笔主还木有幸看到... 所以笔主狠心放下公司工作,抛弃领导的绩效奖金,花了大半天时间研究JNI的调用方法(特别不用写命令那种),终于赶在下班的前三分钟,顺利完全通过eclipse界面调用出自定义的dll方法!那个激动就像中美建交或日本淹没或苍老师来我家做客那一

2、瞬间那么振奋人心!!   简朴准备工作: 以下具体操作方法可以直接百度,答案几乎是唯一可信的。 1. 安装JDK,配置系统环境变量 2. 准备好一个带CDT插件的Eclipse,笔主使用的是google的ADT Bundle,自带了CDT,相应Eclipse 3.8.0版 3. 下载一个MinGW(免费的C/C++等语言编译器套件),笔主限于公司垃圾网络,测试时使用mingw-offline-install-20230426 v4.6.2版,安装时仅需勾选(在线安装版下载数据量约50Mb): · C Compiler · C++ Compiler · MinGW D

3、eveloper Toolkit (Indudes MSYS Basic System)   配置MinGW的环境变量: 1. 打开环境变量(系统变量),添加 MINGW_HOME 变量,变量值是刚才MinGW的安装地址,如 D:\Program Files\MinGW 2. 设立path变量,编辑path变量添加 %MINGW_HOME%\bin;%MINGW_HOME%\msys\1.0\bin; 3. 添加 LIBRARY_PATH 变量,变量值 %MINGW_HOME%\lib 4. 添加 C_INCLUDE_PATH 变量,变量值 %JAVA_HOME%\incl

4、ude;%JAVA_HOME%\include\win32;%MINGW_HOME%\include 5. 添加 CPLUS_INCLUDE_PATH 变量,内容 %JAVA_HOME%\include;%JAVA_HOME%\include\win32;%MINGW_HOME%\lib\gcc\mingw32\4.5.2\include\c++ 6. Win7点击拟定后立即生效,若未生效请重启系统(参考安装JDK时配置操作) 第4、5步额外添加的%JAVA_HOME%\include;%JAVA_HOME%\include\win32;是为了让eclipse在c/c++项目中自动

5、引入这个目录下的各种头文献,例如 jni.h,也可在具体项目的属性中以下位置进行指定:     调用JNI全过程: 创建一个普通java工程 Test,添加一个专门负责引入调用本地库的类 Native,代码如下: 1 public class Native { 2 // 声明自定义本地库方法接口 3 native public static void run(); 4 5 // 自动加载本地库文献,如文献名全称为 myCLib.dll 6 static{ 7 System.loadLibrary("myCLi

6、b"); 8 } 9 }   打开CMD....好吧,笔主认可标题党了,整个博文仅此一处需要一句简朴的命令! CMD导航至项目文献夹下的 src 目录,输入 javah test.Native(需要使用包名.类名的完整限定名称),生成本地方法接口头文献 test_Native.h:   刷新eclipse的 Package Explorer 应当会变成这样的目录状态,其中刚才刚才生成的 test_Native.h 文献代码如下图示(笔主抢闸创建了Test类,稍候用于调用Native类的本地方法):     创建一个新的 C 工程 MyC,期待编译成dll的

7、时候,选择 Shared Library 下的模板:    在 MyC 工程内创建一个文献夹 src ,并将刚才 Test 项目中生成的 test_Native.h 头文献拷贝(或剪切)到 MyC 工程的 src 文献夹下,,Test 工程下的 test_Native.h 文献在后面的项目运营过程中将不再起任何作用,可删:   *  打开 MyC 工程下的 test_Native.h ,若 #include 提醒 Unresolved inclusion: 的错误警告(如下图所示),则表白目前这个C项目没有指定 jni.h 的头文献位置,参考

8、上文 配置MinGW的环境变量 的第4、5步进行配置:    **  MyC 工程文献中接口函数代码上提醒的 Syntax error 可以暂时忽略,据闻是eclipse语法检测的一个bug:      在 MyC 工程 src 文献夹中,新建一个C的实现类 NativeC.c ,引入接口头文献 jni.h、test_Native.h ,并编写接口函数 JNICALL Java_test_Native_run 的实现(函数接口直接从 test_Native.h 中完整拷贝过来,注意加上形参): 1 #include 2 #include "test_Nat

9、ive.h" 3 #include 4 5 JNIEXPORT void JNICALL Java_test_Native_run 6 (JNIEnv *env, jclass clazz){ 7 puts("Hello JAVA, I am C."); 8 }   此时工程看起来应当是这样子的:       由于使用 minGW 默认生成的 dll 函数署名带有 @ 分隔符,将导致后面JNI调用时产生 java.lang.UnsatisfiedLinkError: xoxoclass.xoxomethod() 错误,因此需要执行以

10、下环节消除多余的 @ 符号。 配置 MyC 工程: MyC 工程上右键菜单 Properties ,左侧选择 C/C++ Build -> Settings ,右侧 Configuration 中显示的为当前正在显示的编译模板,[ Active ] 表达通过 Project->Build Project 菜单编译时使用的默认编译版本, minGW 将根据这些模板的属性设立,编译生成多套版本的 dll 或 exe ,有洁癖的同学可通过最右侧的 Manage Configurations... 按钮增删编译模板:   为了对比效果,笔主决定增长一套新模板 ReleaseNoAt ,继承默

11、认的 Release 模板属性参数,并设立为Active,决不是由于洁癖或什么奇怪的因素:     OK返回刚才的编译模板属性配置界面,在 ReleaseNoAt 模板下,Tool Settins 页中的 MinGW C Linker -> Miscellaneous ,Linker flags 框中输入 -Wl,--kill-at,点击最下方的 Apply:   点击 MinGW C Linker ,显示的参数结果应当是这样的:   假如之前建立的C工程不是使用 Shared Library 模板,并且默认编译出的不是 dll 文献,可以在此选择 Build Arti

12、fact 页进行修改配置,Artifact Type 中选择 Shared Library ,Artifact extension 中选择 dll 即可,Output prefix 可指定输出 dll 文献的命名前缀:   OK拟定返回代码编辑界面,在 MyC 工程上右键菜单,Build Configurations->Build All,生成所有模板的dll文献版本:   各版本 dll 如下图所示,控制台中可以见到每个 dll 生成所用的命令参数(现在显示的是 ReleaseNoAt 版本,即唯一配置了去掉@符号的模板):   为了验证默认 Release 与 Re

13、leaseNoAt 版本的区别,可用 dllexp 这个工具打开这两个 dll 文献进行查看(具体方法不告诉你): Release版(下面这个 @8 就是一切麻烦的罪魁祸首)   ReleaseNoAt版(干净了)   回到eclipse,在 Test 工程中新建文献夹 dll (命名随意),并将上面生成的 ReleaseNoAt版 libMyC.dll 拷贝到这个dll文献夹中,重命名为 myCLib.dll(由于上文 Native类 中通过 System.loadLibrary("myCLib"); 加载了这个名字的dll文献,当然你也可以修改代码变成 System.lo

14、adLibrary("libMyC"); 来取代重命名),此后 MyC 工程将不再起任何作用,可删:   配置 Test工程 属性,指定工程的本地库目录,直接看图:   Test工程 test包中新建 Test类 (由于时间关系,笔主已经事先偷偷违建了),在main方法中引用 Native类 的本地方法run(): 1 public class Test { 2 3 public static void main(String[] args) { 4 Native.run(); 5 } 6 }   最后一步,运营起来...好吧,上面已经偷跑了,最终结果如上图所示,Hello, I am Wavky.

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服