Using ActiveMQ Classic > Examples

Since version 5.12.0, Apache ActiveMQ Classic comes with the new tool that can be used to produce and consume messages from the broker.


Before running the examples you should try running a JMS broker on your machine. Follow the Installation instructions to use a binary distribution of ActiveMQ Classic. To run the broker in a command shell, type:

bin/activemq console

This starts up ActiveMQ Classic.


From the command line you can run

${ACTIVEMQ_HOME}/bin/activemq producer
${ACTIVEMQ_HOME}/bin/activemq consumer

If you have activemq-all jar available you can achieve the same with

java -jar activemq-all-5.x.x.jar producer
java -jar activemq-all-5.x.x.jar consumer

If you run inside Karaf, you can run the commands as



For all options on the commands, run them with --help parameter. The up to date, options for producer and consumer can be found in the source.


Here are a couple of examples of more advanced features.

To send a text message with custom text use

bin/activemq producer --message "My message" --messageCount 1

To send byte message of custom length use

bin/activemq producer --messageSize 100 --messageCount 1

To send a text message with content obtained from an url

bin/activemq producer --payloadUrl http://activemq.apache.org/schema/core/activemq-core.xsd --messageCount 1

To consume in transaction use

bin/activemq consumer --transacted true

To use client acknowledgment use

bin/activemq consumer --ackMode CLIENT_ACKNOWLEDGE

To use durable topic subscribers use

bin/activemq consumer --durable true --clientId example --destination topic://TEST

Old examples

In older versions of ActiveMQ Classic, the corresponding examples were located in examples/ or examples/openwire/swissarmy/ directories, where you can do the similar tasks with an ant script.

ant producer
ant consumer

Other examples

In examples/ directory (depending on the version) you can find more examples of using the broker with variety of protocols (mqtt, amqp, …) and clients (Java, Ruby, JavaScript, …), so it’s the good place to start learning. Also, examples/conf/ directory contains a lot of different configuration examples that you can use as a starting point for your deployment.

See Also

Apache, ActiveMQ, Apache ActiveMQ, the Apache feather logo, and the Apache ActiveMQ project logo are trademarks of The Apache Software Foundation. Copyright © 2024, The Apache Software Foundation. Licensed under Apache License 2.0.