Examples

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.

Prerequisites

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.

Running

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

activemq:producer activemq:consumer 

Options

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.

Examples

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 logo, and the Apache ActiveMQ project logo are trademarks of The Apache Software Foundation. Copyright © 2025, The Apache Software Foundation. Licensed under Apache License 2.0.