企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] # 介绍 向某一个虚拟机示例执行命令,比如你当前是虚拟机A,需要向虚拟机B执行命令,则需要次类相关方法。封装于`jcmd` # 示例 ~~~ import beifengtz.vmconsole.JCmd; import beifengtz.vmconsole.entity.jcmd.JCmdEnum; public class Test { public static void main(String[] args)throws Exception{ JCmd.executeCommand(8888, JCmdEnum.GC_RUN); } } ~~~ # 方法 | 名称 | 参数 | 返回值 | 含义 | | --- | --- | --- | --- | | listProcess() | 无 | JCmdResult | 列出虚拟机进程列表 | | ~~listCommands()~~ | int vmId(虚拟机ID,JpsCmd可获取)| JCmdResult | 列出虚拟机支持的命令,**后期将取消,由JCmdEnum对象代替** | | executeCommand() | 1. int vmId(虚拟机ID,JpsCmd可获取)<br/>2. JCmdEnum jCmdEnum(命令枚举类)| JCmdResult| 向某一个虚拟机实例执行命令| | ~~executeCommand()~~ | 1. int vmId(虚拟机ID,JpsCmd可获取)<br/>2. JCmdEnum... jCmdEnum(命令枚举类数组)| JCmdResult| 向某一个虚拟机实例执行批量命令,**后期将取消**| # 结果对象 ```java |—— beifengtz.vmconsole.entity.JvmResult |—— beifengtz.vmconsole.entity.jcmd.JCmdResult |—— beifengtz.vmconsole.entity.jcmd.JCmdProcess |—— beifengtz.vmconsole.entity.jcmd.JCmdEnum ``` ## JCmdEnum ~~~java JFR_STOP("JFR.stop"), JFR_START("JFR.start"), JFR_DUMP("JFR.dump"), JFR_CHECK("JFR.check"), VM_NATIVE_MEMORY("VM.native_memory"), VM_CHECK_COMMERCIAL_FEATURES("VM.check_commercial_features"), VM_UNLOCK_COMMERCIAL_FEATURES("VM.unlock_commercial_features"), MANAGEMENTAGENT_STOP("ManagementAgent.stop"), MANAGEMENTAGENT_START_LOCAL("ManagementAgent.start_local"), MANAGEMENTAGENT_START("ManagementAgent.start"), GC_ROTATE_LOG("GC.rotate_log"), THREAD_PRINT("Thread.print"), GC_CLASS_STATS("GC.class_stats"), GC_CLASS_HISTOGRAM("GC.class_histogram"), GC_HEAP_DUMP("GC.heap_dump"), GC_RUN_FINALIZATION("GC.run_finalization"), GC_RUN("GC.run"), VM_UPTIME("VM.uptime"), VM_FLAGS("VM.flags"), VM_SYSTEM_PROPERTIES("VM.system_properties"), VM_COMMAND_LINE("VM.command_line"), VM_VERSION("VM.version"); ~~~ ## JCmdProcess | 属性 | 类型 | 含义 | | --- | --- | --- | | vmId | int | 虚拟ID | | content | String | 虚拟机进程信息内容 | ## JCmdResult | 属性 | 类型 | 含义 | | --- | --- | --- | | processes | List\<JCmdProcess\> | 进程信息列表 | | result| String | 命令执行结果 |