gpt4 book ai didi

java - 我如何以编程方式获取 JBoss AS 5.1 中的版本?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:29:29 26 4
gpt4 key购买 nike

有谁知道如何在 JBossAS 5.1 下以编程方式获取服务器版本号?

JBossAS 4.2 有 org.jboss.Version,有 getMajor()getMinor() 方法,但这似乎没有存在于 5.1 中。

最佳答案

有几种方法可以获取版本号。我认为官方的方式是按照他们的 Website 中的描述使用 JMX ,但为此应用服务器必须可达。要询问的 MBean 是 jboss.system:type=server。您甚至可以为此使用外部 shell skript twiddle:

%JBOSS_HOME%\bin>twiddle get jboss.system:type=Server VersionNumber
VersionNumber=5.1.0.GA

这是来自他们网站的代码片段(远程 jmx):

MBeanServerConnection server = (MBeanServerConnection)new InitialContext().lookup("jmx/rmi/RMIAdaptor");
ObjectName on = new ObjectName("jboss.system:type=Server");
Object ver = server.getAttribute(on, "VersionNumber");

另一种变体是使用加载类的包信息。如果你加载一个类,比如 org.jboss.Main,你可以得到在 JAR file spec 中指定的实现版本。 .这是一个例子:

    org.jboss.Main m=new Main();   //at least a jboss class loaded. not needed in the container
Package p=Package.getPackage("org.jboss");
System.out.println("Major=" + p.getImplementationVersion().split("\\.")[0]);
System.out.println("Minor=" + p.getImplementationVersion().split("\\.")[1]);

更新:通过包检查添加版本号。

关于java - 我如何以编程方式获取 JBoss AS 5.1 中的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1572185/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com