2013-04-02 2 views
2

Я пытаюсь запрограммировать с ZeroMQ на Ubuntu с использованием примеров Java. Я успешно создал ядро ​​ZeroMq и привязки Java, но, пытаясь запустить простой пример, он просто зависает бесконечно.Пример ZeroMQ Java зависает на Ubuntu 12

Вот что я сделал до сих пор, кстати, я использую JDK/JRE 1.7, ZeroMQ 3.2.2 и Ubuntu 12.10 64-bit

Построение основных библиотек ZeroMQ

Я скачал ядро ​​ZeroMQ 3.2.2 POSIX тарболом из here , извлекается и строится в соответствии с инструкциями here. Настроить, сделать и установить все прошло хорошо, никаких ошибок, я также запустил ldconfig после make, чтобы обновить кеш системной библиотеки. Быстрый взгляд на /usr/local/lib и ядро ​​библиотеки, как представляется, правильно построить ...

[email protected]:/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 привязок источник из here, сконфигурированный, побежал делать; все выглядит хорошо. Это создает zmq.jar и zmq-perf.jar; снова запущен ldconfig, чтобы обновить кеш библиотеки; переехал банки к /usr/local/share/java ...

[email protected]:/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 пример подробного here, используя следующие параметры для моего окружения ...

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 

Got UnsatisfiedLinkError; исправлено, что путем входа и выхода. Ran снова и он просто висит, нет ошибок, nata, zilch. Я удалил аргумент 100 сверху и получил сообщение об использовании от local_lat, поэтому я знаю, что он находит файлы zmq jar, так как класс local_lat находится в zmq-perf.jar. Снова закончите с приведенной выше командой, и она просто зависает; нет ошибок, ничего. Немного опустил, так как это было довольно много работы, чтобы все было построено.

UPDATE

Ниже, оказывается, это была проблема с тем, как я испытывал

+1

Возможно, вы захотите начать с собственной реализации Java [JeroMQ] (https://github.com/zeromq/jeromq) –

+0

@ Steve-o Это чистая реализация Java? Будет ли он работать автономно без каких-либо зависимостей для файлов 'so' или' dll'? – raffian

+0

Это правильно. –

ответ

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 с этим code, загрузил и обработал его, используя приведенную выше команду для ее запуска.