2

我正在尝试使用 Java 示例在 Ubuntu 上使用 ZeroMQ 进行编程。我已经成功构建了 ZeroMq 核心和 Java 绑定,但是尝试运行简单的示例,它只是无限期地挂起。

这是我到目前为止所做的,顺便说一句,我正在使用JDK/JRE 1.7,ZeroMQ 3.2.2Ubuntu 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.jarzmq-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. 使用上述命令再次运行,它只是挂起;没有错误,什么都没有。有点失望,因为要完成所有的工作需要做很多工作。

更新

见下文,原来这是我测试方式的问题

4

1 回答 1

2

好的,事实证明我所做的一切都是正确的。核心库和Java绑定已成功构建和安装,问题是示例......

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

local_lat程序不是Hello World测试,我以为是,在jzmq网站上有点误导,上面是命令行示例,不是测试安装的示例,通过查看代码证实了这一点local_lat;它什么也不做,当然也不输出任何东西,这就是为什么它似乎只是挂起的原因。

我用这段代码测试了ZeroMq ,下载并javac'ed它,使用上面的命令运行它。

于 2013-04-02T22:18:42.537 回答