The RabbitMQ community and its main supporter company, Pivotal, provide an official client library for Java called RabbitMQ Java Client. Client library provides both the publishing of messages and receiving of messages. Moreover, Client library supports both synchronous receiving and asynchronous receiving. The details will be explained in the following topics.
If we look at the main packages of the RabbitMQ Java Client, we can see three packages as shown in the following screenshot:
Let's take a look at the following explanation: