Я успешно создал издатель, но не удался создать абонент с помощью следующего:Акка-ZMQ Ошибка создания абонента (опрос)
public static void main(String [] args)
{
ActorSystem system = ActorSystem.create("System");
ActorRef subscriber = system.actorOf(new Props(Sub.class), "subscriber");
subscriber.tell(new MyActor("CharlieParker", 50, 25), subscriber);
}
public class Sub extends UntypedActor
{
ActorRef subSocket = ZeroMQExtension.get(getContext().system()).newSubSocket(
new Connect("tcp://127.0.0.1:1237"),
new Listener(getSelf()), Subscribe.all());
}
Получил эту ошибку: неперехваченной ошибки из ниток [System-akka.zeromq.socket -dispatcher-7] отключает JVM, так как для ActorSystem [System] включен режим «akka.jvm-exit-on-fatal-error». java.lang.NoSuchMethodError: org.zeromq.ZMQ $ Poller.poll (J) J на akka.zeromq.ConcurrentSocketActor $$ anonfun $ 10.apply (ConcurrentSocketActor.scala: 180) at akka.zeromq.ConcurrentSocketActor $$ anonfun $ 10.apply (ConcurrentSocketActor.scala: 179) at akka.zeromq.ConcurrentSocketActor.akka $ zeromq $ ConcurrentSocketActor $$ doPoll (ConcurrentSocketActor.scala: 197) at akka.zeromq.ConcurrentSocketActor $$ anonfun $ получать $ 1.applyOrElse (ConcurrentSocketActor.scala: 46) at akka.actor.ActorCell .receiveMessage (ActorCell.scala: 425) at akka.actor.ActorCell.invoke (ActorCell.scala: 386) at akka.dispatch.Mailbox.processMailbox (Mailbox.scala: 230) at akka.dispatch.Mailbox.run (Mailbox.scala: 212) по адресу java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:615) в java.lang .Thread.run (Thread.java:722)
Что это значит?
Я построил zeromq-3.2.2.tar (http://download.zeromq.org/zeromq-3.2.2.tar.gz) и jzmq-master (https://github.com/zeromq/jzmq). Скопированный сгенерированный zmq.jar в путь к проекту и библиотеки, похоже, находятся на моем локальном сервере: Hakan-MacBook-Pro: lib Hako $ ls | Grep libjzmq libjzmq.0.dylib libjzmq.a libjzmq.dylib libjzmq.la Хакан-MacBook-Pro: Lib Hako $ Ls | grep libzmq libzmq.3.dylib libzmq.a libzmq.dylib libzmq.la – Hako
Я тоже построил этот (после того, как прочитал ваш комментарий): https://github.com/zeromq/libzmq, и проблема все еще существует. – Hako
Итак, теперь я вижу. У вас есть привязки jzmq в вашем пути к классам? Akka полагается на привязки zeromq-scala, доступные здесь https://github.com/valotrading/zeromq-scala-binding, и они не являются заменой друг для друга. –