天天看點

ZeroMQ--使用jzmq進行程式設計

一、環境搭建

常見問題:

出現java.lang.unsatisfiedlinkerror: /usr/local/lib/libjzmq.so.0.0.0: libzmq.so.1: cannot open shared object file: no such file or directory異常 

原因是未找到zmq動态連結庫。 

解決方法1:export ld_library_path=/usr/local/lib 

解決方法2:編輯/etc/ld.so.conf檔案,增加一行:/usr/local/lib。再執行sudo ldconfig指令 

exception in thread "main" java.lang.unsatisfiedlinkerror: no jzmq in java.library.path 

未設定native library 

在eclipse設定native library為/usr/local/lib 

或在jvm增加參數 

-djava.library.path=/usr/local/lib 

或在啟動腳本中增加 

java -djava.library.path=/usr/local/lib

二、使用jzmq進行程式設計

    1.建立maven項目,pom.xml的内容參見pom.xml

      注意:jzmq的版本不能太高,建議使用2.1.0,目前storm也是使用這個版本的jzmq-2.1.0.jar

      否則報: java.lang.unsatisfiedlinkerror: org.zeromq.zmq$socket.nativeinit()v

    2.編寫publisher.java,subscriber.java,參見源代碼

    publisher.java  

subscriber.java

pom.xml