如何解决java调dll报Unable to load library的错误

如何解决java调dll报Unable to load library的错误,第1张

java调用dll文件有两个函数,分别为System.load 和 System.loadLibrary。如果在调用时出现Unable to load library的错误,可以通过下面的步骤进行解决:

1、使用System.load时需要输入文件的全路仿大径,比如:

System.load(“D:\\eclipse\\test.dll”)

如果使用该函数樱大友报错,首先需要检查路径是否写全写对,然后到指定的路径检查文件是否存在,有没有被隐藏或者加密;

2、使用System.loadlibrary函数时,应用会在系统的library的目脊槐录中寻找符合条件的库文件,在window系统下,需要将需要加载的库文件(.dll)放在JDK安装目录下的include目录下,在linux系统下一般是放到/usr/lib目录下。

也可以使用-Djava.library.path=[path]参数,来指定Java程序加载库文件的路径。

3、在window中,最好使用Windows的C/C++编译器生成dll文件,否则调用会有一些问题。

嗯 之前也遇到过你这样的问题

第一种方案呢,就是根据源码,把它原来加载dll文件那块修改一下 具体请参见 System.load 和 System.loadLibrary详解

第二种方案,也不太推荐,因为我们做的项目,罩局到客户那边实施的时候太麻烦,就是将dll文件考谈闷尺到java 的path下 例含高如我的 就拷贝到C:\Program Files (x86)\Java\jre7\bin 这个路径下,个人推荐第一种方案

1、这个dll可以单毕键独通过其他程序运手纯巧行不?

2、该dll是否缺少运行环境?可以下载http://www.microsoft.com/downloads/zh-cn/details.aspx?displaylang=zh-cn&FamilyID=a5c84275-3b97-4ab7-a40d-3802b2af5fc2安装后,再试试。

3、补充一下,dll或者JAVA代码的版本不正确也可能导致裤橡这个现象。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12546021.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存