我正在尝试使用 Java 示例在 Ubuntu 上使用 ZeroMQ 进行编程。我已经成功构建了 ZeroMq 核心和 Java 绑定,但是尝试运行简单的示例,它只是无限期地挂起。
这是我到目前为止所做的,顺便说一句,我正在使用JDK/JRE 1.7
,ZeroMQ 3.2.2
和Ubuntu 12.10 64-bit
构建 ZeroMQ 核心库
我从这里下载了核心 ZeroMQ 3.2.2 POSIX tarball ,根据这里的说明提取和构建。配置、制作和安装一切顺利,没有错误,我还运行ldconfig
以下make
更新系统库缓存。快速浏览一下,/usr/local/lib
核心库似乎已经正确构建......
usr1@ubuntu:/usr/local/lib$ ls -ltr *.so
lrwxrwxrwx 1 root dev 15 Apr 1 19:31 libzmq.so -> libzmq.so.3.0.0
lrwxrwxrwx 1 root dev 16 Apr 1 20:14 libjzmq.so -> libjzmq.so.0.0.0
构建 JZMQ Java 绑定
从这里下载 Java 绑定源,配置,运行 make;一切看起来都不错。这会创建zmq.jar
和zmq-perf.jar
; 再次运行ldconfig
以更新库缓存;将罐子移到/usr/local/share/java
...
usr1@ubuntu:/usr/local/share/java$ ls -ltr
-rw-r--r-- 1 usr1 usr1 40507 Apr 1 20:14 zmq.jar
-rw-rw-r-- 1 usr1 usr1 4809 Apr 2 08:41 zmq-perf.jar
运行示例local_lat
我为我的环境使用以下设置运行了此处local_lat
详述的示例...
java -Djava.library.path=/usr/local/lib -classpath /usr/local/share/java/zmq-perf.jar:/usr/local/share/java/zmq.jar local_lat tcp://127.0.0.1:5555 1 100
得到UnsatisfiedLinkError
;只需登录和退出即可解决此问题。再次运行,它只是挂起,没有错误,nata,zilch。我从上面删除了参数100
并从中获取了使用消息local_lat
,所以我知道它正在查找 zmq jar 文件,因为local_lat
类驻留在zmq-perf.jar
. 使用上述命令再次运行,它只是挂起;没有错误,什么都没有。有点失望,因为要完成所有的工作需要做很多工作。
更新
见下文,原来这是我测试方式的问题