你怎么能findSystem.loadLibrary()在哪里find一个库?

你可以通过Java方法调用或Windows工具找出System.loadLibrary()从哪里find一个DLL

我们有一些代码,我们预计会失败,因为它加载本地库与System.loadLibrary(),它意外成功! 我们认为我们已经从PATH中删除了相关DLL的所有副本,并删除了java.library.path参数,但代码依然成功。 我们已经重新启动机器(以确保它不会潜伏在内存中)。 我们一定是在做一些愚蠢的事情,但是在解决问题时遇到了麻烦。

ProcessExplorer不会显示哪些DLL被加载,并从哪里?


从OP编辑。

ProcessExplorer呢 。 运行它,然后执行“搜索”来查找你的dll。 它会显示它所连接的所有进程 – 你的java进程应该是其中之一。 “句柄或dll”行也将提供一个完整的路径找到DLL的位置。

尝试System.getProperty("java.library.path");

如果你的lib被放置在这些地方之一,那么它会被抬起头来