Java程序调用动态库的问题,Can't find dependent libraries

win7 32位系统上,java程序调用Qt写的动态库,Qt build的时候没报任何错。
System.load()的时候报错Can't find dependent libraries。

我用depends.exe 这个工具查看DLL信息,开始的时候确实报错说有几个依赖的动态库找不到,我就在网上下载了放到system32目录下。depends不报错了(但是有一个警告:At least one module has an unresolved import due to a missing export function in a delay-load dependent module,我在官网上查到说这个警告可以忽略:http://www.dependencywalker.com/faq.html)

但是java程序运行时还是有Can't find dependent libraries的错误。

求解决。

System.load()虽然是按照路径加载动态库,但是对相对路径处理不是那么敏感,你应该做的事window开发,不妨在环境变量力设置好库路径,然后再在代码里调用
System.getProperty出来+相对路径处理处理,祝你好运。

首先还是检查下有没有jar包的遗漏,然后检查它们的从属关系,以及版本是否匹配。