dll动态库生成与调用(2):Java程序利用JNI、JNA调用动态库

dll动态库生成与调用(1):生成dll动态库、C程序调用动态库
dll动态库生成与调用(2):Java程序利用JNI、JNA调用动态库

文章简介

本文主要内容是使用JNA、JNI调用dll动态库。

因为JNI的使用在菜鸟教程中已经有了比较完整的介绍,所以我在本文中就只是提了一下JNI需要注意的事项,菜鸟教程的网址我已经贴在JNI那一章节。JNI教程中使用的是eclipse,如果你使用IDEA,那么你可以看JNA教程中是如何设定库目录的。

开发环境

IDE: Visual Studio 2015、IDEA 2019.1

JNA(Java库): 3.5.2

JDK: 1.8

文件目录结构

C中的JNI_test项目用于生成dll,JNI_test_call是C程序调用dll,JNI_test_java是通过Java程序调用dll。

C:

JNI_test项目中的dll.h、dll.c用于生成dll动态库文件,JNI_test_call项目中的call.c用于调用dll库。

在这里插入图片描述

注: 如果是VS新手,建议这两个项目不要放在同一个解决方案中,为这两个项目各创建一个解决方案,能避开一些VS使用上的问题。

Java:

在这里插入图片描述

一、JNA调用动态库

JNA是JNI的简化版,对于C程序来说,JNA不再需要根据Java代码生成C的头文件,简化了调用流程。不过作为简化版,功能及性能方便自然是有所弱化的,例如JNI可以在C端调用Java端,可以实现双向调用,但是JNA只能用于Java端调C程序的单向调用。如果想了解更多,可以看文末的扩展阅读的第8、9项

1.Java环境配置

1.配置JDK环境:

需要在官网下载以及配置IDEA中的JDK设置,网上有很多教程&

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值