RabbitMQ の Java Client を Scala から使う
下準備
下記から RabbitMQ Java Client をダウンロードする
http://www.rabbitmq.com/java-client.html
「ant dist」でコンパイルすると「build/dist」配下に幾つかの jar が出来る。
今回は下記の二つを利用する。
- commons-io-1.2.jar
- rabbitmq-client.jar
Scala Source
import com.rabbitmq.client.ConnectionFactory object Test { def main(args:Array[String]) = { val factory = new ConnectionFactory() factory.setUsername("guest") factory.setPassword("guest") factory.setVirtualHost("/") factory.setHost("localhost") factory.setPort(5672) val conn = factory.newConnection() val channel = conn.createChannel() val queueName = channel.queueDeclare().getQueue() channel.basicPublish("", queueName, null, "Hello RabbitMQ.".getBytes()) val response = channel.basicGet(queueName, true) if (response != null) { val message = new String(response.getBody(), "UTF-8") println(message) } channel.close() conn.close() } }
コンパイルと実行
fsc-2.8 -classpath ./rabbitmq-client.jar Test.scala scala-2.8 -classpath .:./rabbitmq-client.jar:./commons-io-1.2.jar Test