Java调用第三方dll

本文介绍了如何在Java中调用第三方dll,包括安装32位JDK和eclipse,配置环境变量,通过javah生成h文件,使用C++编写接口函数并生成新的dll,以及解决LoadLibrary的问题。最后在Java工程中使用dll并创建main函数进行调用。
摘要由CSDN通过智能技术生成

刚接触Java几天,项目需要,使用Java调用can卡的dll,发现网上的帖子有很多不明确的地方,特此写之。

       首先安装开发环境,考虑到兼容性,安装的JDK和eclipse都是32位的,正常安装结束后,需要添加一些环境变量(网上有说正常安装后,环境变量就不用配置了,我安装了两台电脑,都不行的,需要手动添加环境变量)。找到高级系统设置-->高级-->环境变量,在系统变量一栏添加如下信息:

变量名:JAVA_HOME,值:D:\A_Z_R_J\Java\jdk1.8.0_131,就是JDK的安装路径。

变量名:CLASSPATH,值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

在Path一栏,继续添加值:%JAVA_HOME%\bin;

 

总共需要添加三处,即JAVA_HOME、CLASSPATH和Path。

       然后,使用Java调用第三方的DLL,一般来说,DLL都是使用C/C++语言编写的,Java不同于其他语言(如C++,C#等),使用C++可以直接调用DLL,而使用Java必须封装一层,才可以调用。或者这样讲:比如需要用Java调用A.dll,那么首先需要用Java编写一个代码B.Java,这个代码可以理解为C++里与dll配套使用的h文件,用来对dll里的函数进行声明(但又不同于h文件),然后使用Java命令,将这个B.Java代码编译成一个B.h文件,再拿这个B.h文件到C++里,制作对应的接口函数内容(因为这个B.h文件只有函数的声明,没有具体实现,需要新建B.cpp来写入其实现),制作完成后生成B.dll,这时拿这个B.dll回到B.Java的工程中,放置于其根目录下,或lib里,保证工程能搜索到就可以。这时可以新建一个main.Java代码,写一个主函数,来调用A.dll里的内容。写了这么多

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值