如何从 WAR 中获取 JBoss 7 的版本号?

发布于 2024-12-07 02:46:20 字数 476 浏览 1 评论 0原文

对于较旧的 JBoss,这些机制有效:

  • 检查类 org.jboss.mx.util.MBeanServerLocator
  • 然后使用 JSR77:使用 *:j2eeType=J2EEServer,* 查找 JMX MBean并获取属性 serverVersion

  • 检查名为 jboss.system:type=Server 的 MBean 并获取属性的值版本

但对于 JBoss 7,MBean 都不存在(也不存在任何合适的类来检查,WAR 位于其 OSGi 笼中)。我所能做的就是搜索 JMX 域 jboss.modules: 如果存在,则推断这是 Jboss 7。

有没有办法从 WAR 的 init() 中获取确切的版本号?

For older JBoss these mechanisms worked :

  • Check for Class org.jboss.mx.util.MBeanServerLocator
  • Then use JSR77: Look for a JMX MBean with *:j2eeType=J2EEServer,* and get the attribute serverVersion

or

  • Check for an MBean with name jboss.system:type=Server and get the value of attribute Version

But for JBoss 7 neither MBean exists (nor any suitable class to check, with the WAR sitting in its OSGi cage). All I can do is for searching the JMX domain jboss.modules: if it exists infer that this is a Jboss 7.

Is there a way to get the exact version number from within a WAR's init() ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文