我在通过 java 的 System.loadLibrary("name.dll"); 加载简单的 .dll 时遇到问题。我在 C:\libraries\name.dll 中有一个 dll 副本,在 system32 文件夹中有另一个副本。请注意,C:\libraries 不在我的路径环境变量中。出于某种原因,当我调用 System.loadLibrary("name.dll") 时,我得到:
java.lang.UnsatisfiedLinkError: Can't load library: C:\libraries\name.dll
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1706)
at java.lang.Runtime.load0(Runtime.java:770)
at java.lang.System.load(System.java:1003)
即使我从 C:\libraries 中删除了 name.dll,我仍然遇到同样的错误。System.load 是否有任何理由在不在路径中的位置找到 .dll,为什么即使在文件被删除后它仍在该位置查找?