mosquitto是一个开源的mqtt服务器,官网: http://mosquitto.org/

paho是eclipse的一个开源项目,使用c、java、lua实现了mosquitto客户端,官网: http://www.eclipse.org/paho/

一、 安装mosquitto

$ brew install mosquitto
$ /usr/local/sbin/mosquitto  // 启动mosquitto服务器

二、 下载并编译paho的jar包

$ wget http://git.eclipse.org/c/paho/org.eclipse.paho.mqtt.java.git/snapshot/org.eclipse.paho.mqtt.java-0.2.1.zip
$ unzip org.eclipse.paho.mqtt.java-0.2.1.zip
$ cd org.eclipse.paho.mqtt.java-0.2.1
2.1 编译jar包
$ cd org.eclipse.paho.client.mqttv3
$ ant
2.2 编译Sample例子
$ cd org.eclipse.paho.sample.mqttv3app
$ mkdir bin
$ javac -d bin -classpath ../org.eclipse.paho.client.mqttv3/target/ship/org.eclipse.paho.client.mqttv3.jar src/org/eclipse/paho/sample/mqttv3app/Sample.java
$ java -classpath ../org.eclipse.paho.client.mqttv3/target/ship/org.eclipse.paho.client.mqttv3.jar:bin org.eclipse.paho.sample.mqttv3app.Sample -b localhost

运行Sample将会看到

再看一下服务器的反应

实现订阅,如果其它客户端连接进来则收到提示消息

$ java -classpath ../org.eclipse.paho.client.mqttv3/target/ship/org.eclipse.paho.client.mqttv3.jar:bin org.eclipse.paho.sample.mqttv3app.Sample -b localhost -a subscribe

服务器的反应,是一个订阅类型的客户端

启动一个新客户端

订阅客户端的反应

服务器的反应

参考: http://mobilave.info/blog/2012/Quick_start_guide_for_the_Paho_MQTT_Java_Client.html