我在 Java 加载本机 dll 时遇到问题,因为它发生在 64 位 Windows 7 上。FWIW 包是 ZeroMQ,但重要的是该 jar 需要加载本机 dll,称为 jzmq.dll。这又取决于 libzmq.dll (和一些标准库)。我已将两个 dll 复制到 target/lib 并设置java.language.path为 target/lib。
如果我写:
System.loadLibrary("jzmq");
Run Code Online (Sandbox Code Playgroud)
我得到UnsatisfiedLinkError一个Can't find dependent libraries. 但是如果我说
System.loadLibrary("libzmq");
System.loadLibrary("jzmq");
Run Code Online (Sandbox Code Playgroud)
然后就没问题了,jzmq.dll加载成功。
在随附的 jar 中,它就包含在内System.loadLibrary("jzmq"),我不想在代码中摆弄依赖项。我不清楚为什么依赖项不会自动加载,也不清楚我需要做什么才能让它正常工作。
预先感谢您的任何帮助!