在批处理文件中,我想使用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方法调用。
有什么想法吗?
答案 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