在使用Java调用libzmq时,有时出现Depends not existed,出现这种问题的原因是,jdk\bin\jzmq.dll 缺少对应的库文件。
现在使用Visual Studio 2013里的dumpbin命令来查看jzmq.dll需要的库文件。
1、打开VS2013的开发人员命令窗口
点击电脑左下角的[开发] —> Visual Studio 2013 --> Visual Studio Tools -->双击" VS2013开发人员命令提示"快捷方式,如下图所示:
快捷路径:C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts
依次输入如下命令:
//切换到jzmq.dll所在的路径
cd C:\Users\hua\Desktop\Image\jzmq
//查看jzmq.dll所依赖的库文件
dumpbin /imports jzmq.dll > deps.txt
2、下载对应的dll文件
打开第1步dumpbin命令导出的deps.txt,发现如下:
Dump of file jzmq.dll
libzmq-v120-mt-4_3_4.dll
MSVCR120.dll
KERNEL32.dll
即jzmq.dll需要libzmq-v120-mt-4_3_4.dll、MSVCR120.dll、 KERNEL32.dll,其中,MSVCR120.dll、KERNEL32.dll是Win10系统自带的,故剩下只需要libzmq-v120-mt-4_3_4.dll,下载这个libzmq-v120-4_3_4.zip即可, 链接: https://pan.baidu.com/s/1Png7BsIUd6kHXAlLCnRjLA 提取码:fiaj
将libzmq-v120-4_3_4.zip解压后,把libsodium.dll、libzmq-v120-mt-4_3_4.dll和jzmq.dll,一起放到C:\Program Files\Java\jdk1.8.0_251\bin目录即可,如图(2)所示: