您能否通过 Java 方法调用或 Windows 工具找出 System.loadLibrary() 从何处查找 DLL?
我们有一些预期会失败的代码,因为它使用 System.loadLibrary() 加载 native 库,但意外地成功了!我们认为我们已经从 PATH 中删除了相关 DLL 的所有副本,并删除了 java.library.path
参数,但不知何故代码仍然成功。我们已经重新启动了机器(以确保它没有潜伏在内存中)。我们一定是在做一些愚蠢的事情,但很难弄清楚是什么。
最佳答案
ProcessExplorer 没有显示加载了哪些 DLL 以及从哪里加载的吗?
从 OP 编辑。
ProcessExplorer做。运行它,然后执行“搜索”以查找您的 dll。它将显示它附加到的所有进程 - 您的 java 进程应该是其中之一。 “handle or dll”行还将给出 DLL 所在位置的完整路径。
关于java - 您如何找到 System.loadLibrary() 在哪里查找库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4626306/