Why should I use IBM MQ classes for Java?

A Java application can use either IBM® MQ classes for Java or IBM MQ classes for JMS to access IBM MQ resources.

Note: Although existing applications that use the IBM MQ classes for Java continue to be fully supported, new applications should use the IBM MQ classes for Jakarta Messaging. Features that have recently been added to IBM MQ, such as asynchronous consume and automatic reconnection, are not available in the IBM MQ classes for Java, but are available in the IBM MQ classes for JMS and IBM MQ classes for Jakarta Messaging. For more information, see Why should I use IBM MQ classes for JMS? and Why should I use IBM MQ classes for Jakarta Messaging?.
Note:

[Stabilized]IBM will make no further enhancements to the IBM MQ classes for Java and they are functionally stabilized at the level shipped in IBM MQ 8.0. Existing applications that use the IBM MQ classes for Java continue to be fully supported, but new features will not be added and requests for enhancements will be rejected. Fully supported means that defects will be fixed together with any changes necessitated by changes to IBM MQ System Requirements.

The IBM MQ classes for Java are not supported in IMS.

The IBM MQ classes for Java are not supported in WebSphere® Liberty. They must not be used with either the IBM MQ Liberty messaging feature, or with the generic JCA support. For more information, see Using WebSphere MQ Java Interfaces in J2EE/JEE Environments.