【八阿哥】java调用dll文件提示找不到依赖库java.lang.UnsatisfiedLinkError:Can't find dependent libraries

先贴异常信息:

Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Program Files\Java\jdk1.8.0_181\bin\xxx.dll: Can't find dependent libraries
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1824)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1086)
        at Jenc.<clinit>(Jenc.java:22)

找了好多资料,终于找到一个靠谱的,贴出原文地址:
http://sylar029.iteye.com/blog/1171260 感谢大佬,居然还有dll依赖检查工具这种神器,然后继续找到https://blog.csdn.net/chaipp0607/article/details/79307681,顺利的下载好了dll依赖检查工具

然后就帮我扫出来了,如下图所示:

至于dll文件去哪儿下载,前文中有提到一个地址:http://www.dllbang.com/ 但是我一直打不开,最后去另外一台windows电脑里面拷贝的

这个困扰我一周的问题,终于解决了,另外我担心这个dll工具下载地址失效,所以我有上传到CSDN,dll依赖检查工具

java.lang.UnsatisfiedLinkErrorJava中的一个异常,它通常在使用本地方法时出现。这个异常表示Java虚拟机无法到本地或者本地依赖。 对于你提到的异常信息:C:\Users\11509\AppData\Local\Temp\jna-46764766\jna8936920469694806898.dll: Can't find dependent libraries,它表示在加载jna8936920469694806898.dll这个本地时,不到它所依赖的其他。 解决这个问题的方法有以下几种: 1. 确保本地文件存在:首先,你需要确认jna8936920469694806898.dll这个本地文件确实存在于指定的路径下。如果文件不存在,你可以尝试重新获取或者重新编译该本地。 2. 检查依赖:使用工具(如Dependency Walker)检查jna8936920469694806898.dll依赖的其他是否存在,并且是否能够正确加载。如果有缺失的依赖,你需要将其添加到正确的路径下。 3. 设置本地路径:如果你确定所有的依赖都存在,并且路径设置正确,但仍然无法加载本地,你可以尝试通过设置java.library.path系统属性来指定本地的路径。例如,在启动Java程序时,可以使用以下命令行参数来设置本地路径:-Djava.library.path=/path/to/native/libs。 4. 检查操作系统和Java版本:确保你的操作系统和Java版本与本地依赖的要求相匹配。有时,不同的操作系统或Java版本可能导致无法加载本地。 希望以上解答对你有帮助!如果还有其他问题,请继续提问。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值