如何使用-cp使用内联脚本执行JMXterm?

时间:2015-02-07 11:48:59

标签: jboss jboss7.x jmx mbeans

在批处理文件中,我想使用jmxterm来访问jboss mbeans。 因此,我需要将jboss-eap-6.1 \ bin \ client \ jboss-client.jar包含在类路径中。

所以我需要以这种方式调用jmxterm才能使它工作:

  

java -cp   。;%JBOSSDIR%/斌/客户端/ JBoss的-client.jar中; jmxterm-1.0-α-4- uber.jar   org.codehaus.classworlds.uberjar.boot.Bootstrapper --url   服务:JMX:远程-JMX://本地主机:9999

问题:我需要将一个参数传递给我想要调用的MBean方法。所以我只看到内联传递脚本的选项,但不知道如何做到这一点。

我发现它应该通过将jmxterm命令传递给jmxterm调用来工作。适应我的情况(使用-cp而不是-jar)它不起作用:

  回声" bean run" | java -cp   。;%JBOSSDIR%/斌/客户端/ JBoss的-client.jar中; jmxterm-1.0-α-4- uber.jar   org.codehaus.classworlds.uberjar.boot.Bootstrapper --url   service:jmx:remoting-jmx:// localhost:9999 -n

我得到以下输出:

Feb 04, 2015 3:26:00 PM org.xnio.Xnio <clinit>
INFO: XNIO Version 3.0.7.GA-redhat-1
Feb 04, 2015 3:26:00 PM org.xnio.nio.NioXnio <clinit>
INFO: XNIO NIO Implementation Version 3.0.7.GA-redhat-1
Feb 04, 2015 3:26:00 PM org.jboss.remoting3.EndpointImpl <clinit>
INFO: JBoss Remoting version 3.2.16.GA-redhat-1
Welcome to JMX terminal. Type "help" for available commands.
#IllegalArgumentException: Command "bean isn't valid, run help to see available commands

将脚本作为文件传递,但我需要将脚本内联传递给mbean方法调用。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我不确定这是否是将脚本作为文件传递的意思,但您可以将所有执行信息作为调用中的文件提供:

Revision: IX1B5400XX

然后使用commands.txt:

java -cp .;%JBOSSDIR%/bin/client/jboss-client.jar;jmxterm-1.0-alpha-4-uber.jar 
org.codehaus.classworlds.uberjar.boot.Bootstrapper -v silent -n < commands.txt