社区
Java SE
帖子详情
jni 调用 已有的dll
zhangxuyu1118
2017-11-29 05:21:37
原先使用过这样的方法实现java和c++协同工作:
先有java类-->javah生成cpp所需的头文件-->根据头文件编写cpp代码。
现在问题来了:有个dll其他人已经编写好了,本地vc代码调用已经成功,现在jni怎么调用?是不是必须要再包装一层吗?
即:
java类-->javah生成cpp所需的头文件-->根据头文件编写cpp代码-->代码中实现对已有dll的调用,这样感觉恶心啊。
期盼指点。
...全文
254
1
打赏
收藏
jni 调用 已有的dll
原先使用过这样的方法实现java和c++协同工作: 先有java类-->javah生成cpp所需的头文件-->根据头文件编写cpp代码。 现在问题来了:有个dll其他人已经编写好了,本地vc代码调用已经成功,现在jni怎么调用?是不是必须要再包装一层吗? 即: java类-->javah生成cpp所需的头文件-->根据头文件编写cpp代码-->代码中实现对已有dll的调用,这样感觉恶心啊。 期盼指点。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
我自横刀香甜笑
2017-11-30
打赏
举报
回复
使用JNative、JNA,不用jni。
http://blog.csdn.net/a491857321/article/details/51504094
参考下以上文章。
JNI
--java
调用
不同平台的动态链接库,
dll
,so,完美,全教程
我们知道,使用
JNI
调用
.
dll
/.so 共享类库是非常非常麻烦和痛苦的。 假如有一个现有的 .
dll
/.so 文件,假如使用
JNI
技术
调用
,我们首先需要另外使用 C 语言写一个 .
dll
/.so 共享库,使用 SUN 规定的数据结构替换 C 语言的数据结构,
调用
已有
的 ?
dll
/so 中公布的函数。 然后再在 Java 中载进这个适配器
dll
/so ,再编写 Java?? native 函数作为
dll
中函数的代理。 经过 2 个繁琐的步骤才能在 Java 中
调用
本地代码。 因此,很少有 Java 程序员愿意编写
调用
dll
/.so 库中的原生函数的 java 程序。这也使 Java 语言在客户端上乏善可陈。可以说
JNI
是 Java 的一大弱点!现在,不需要再羡慕 .NET 的 P/Invoke 机制了。 JNA 把对
dll
/.so 共享库的
调用
减少到了和 P/Invoke 相同的程度。 使用 JNA ,不需要再编写适配用的 .
dll
/.so ,只需要在 Java 中编写一个接口和一些代码,作为 .
dll
/.so 的代理,就可以在 Java 程序中
调用
dll
/so 。
java
调用
JNI
用java的
JNI
调用
C++的
dll
包容详细的步骤和例子 附带源码 一步步的教你搭建,有兴趣的可以下载看看,包括源码、文档哟
Android
JNI
精细化讲解,让你彻底了解
JNI
(中)
Android开发中,随着对移动程序的安全性、性能等方面的重视,
JNI
技术也越发重要。如今,多数企业在招聘中、高级程序员时,基本上都要求熟悉
JNI
开发,所以,掌握
JNI
技术,也是我们迈进心仪企业的必备条件。本套课程共分为三部分,当前为第二部分,主要包括内容:1、
JNI
函数解析2、
JNI
类型解析3、
JNI
描述符(签名)解析4、
JNI
静态注册与动态注册原理解析5、
JNI
调用
流程原理解析适合人群:1、有一定Android基础,零
JNI
基础的学员;2、接触过
JNI
,但却不甚了解的学员;3、使用过
JNI
,希望解其原理的学员;
JNA-Call-
DLL
.tar.gz
Java
调用
DLL
/so源代码JNA和JNative
调用
现有的.
dll
/.so文件,使用
JNI
技术
调用
,我们首先需要另外使用C语言写一个.
dll
/.so共享库,使用SUN规定的数据结构替代C语言的数据结构,
调用
已有
的
dll
/so中公布的函数。
JAWIN(Java
调用
Win API)
Java
调用
Win API:SUN官方提供的
JNI
调用
时还要自己生成头文件,对
已有
的
DLL
再次进行封装。需要对C++非常熟悉,因为要写C++代码。不过还好还有另一种解决方案——Jawin
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章