如何查找应用程序中使用的 JMS 版本?

How to find JMS version used in an application?

我有一个使用 JMS api 的应用程序。使用的应用程序服务器是 jboss-5.0.0.CR2。有什么方法可以获取使用的 JMS 版本吗?

jboss-5.0.0.CR2 是应用程序服务器版本 - 不是 JMS 提供程序。据我所知,HornetQ 是 JBoss 使用的 JMS 实现。无论如何,由于 JBoss 5 与 Java EE 5 兼容,因此 JMS API 版本必须为 1.0。 Java EE 6 与 JMS 1.1 保持一致,Java EE 7 具有最新的 JMS 规范版本,即 2.0

以下是 JMS 版本 1.1 和 2.0 的区分方法。

  • JMS 2.0 API 包含三个新接口:JMSContext、 JMSProducer 和 JMSConsumer
  • JMSContext 替换了单独的 Connection 和 Session 对象 在 1.1 版中只有一个对象。
  • JMSProducer 替换了版本 1.1 中的 MessageProducer 对象
  • JMSConsumer 替换了 1.1 版本中的 MessageConsumer 对象

更多详情: http://www.oracle.com/technetwork/articles/java/jms20-1947669.html