网上关于Mac安装jzmq的资源太少,给大家踩个坑
问题的缘由是Mac系统启动jzmq项目缺少依赖 ,windows上项目需要引入.dll文件依赖库即可
java.lang.UnsatisfiedLinkError: no jzmq in java.library.path
java.lang.NoClassDefFoundError: Could not initialize class org.zeromq.ZMQ
1 用brew下载相关依赖工具包
brew install autoconf
brew install automake
brew install libtool
brew install pkg-config
brew install zeromq
2
下载jzmq源
https://github.com/zeromq/jzmq 将源码下载到自己的喜欢的路径即可
3 将符号链接添加到/ usr / local / include
cd /usr/local/include //路径zeromq后版本不同路径不同
ln -s /usr/local/Cellar/zeromq/4.3.2/include/zmq.h
ln -s /usr/local/Cellar/zeromq/4.3.2/include/zmq_utils.h
4 将符号链接添加到/ usr / local / lib
cd /usr/local/lib //路径lib后的文件名有可能不一样,自己注意下
ln -s /usr/local/Cellar/zeromq/lib/libzmq.5.dylib
ln -s /usr/local/Cellar/zeromq/lib/libzmq.a
ln -s /usr/local/Cellar/zeromq/lib/libmq.dylib
ln -s /usr/local/Cellar/zeromq/lib/pkgconfig/
5
构建jzmq-jni
1 cd **/jzmq //jzmq路径下 2 cd jzmq-jni 3 ./autogen.sh //这一步非常容易报错,我遇到的问题是,下面的两张图 //这里说文件不存在,但是到路径/usr/local/share/aclocal/ 下存在wxwin.m4软连接,但是指的自己的当前目录 //这不是跟我搞笑吗,问题产生不大清楚,直接干掉他 //rm wxwin.m4 //再执行 ./autogen.sh 通过
//接着执行下三步
4 ./configure
5 make
6 make install
6 最后
添加JVM参数
虚拟机选项 -Djava.library.path=/usr/local/lib
如果帮助到你点个赞。