Java 从另一个进程捕获system.out消息

Java 从另一个进程捕获system.out消息,java,Java,我有一个启动JVM(2)的JVM(1)。我希望能够监视JVM(1)中来自JVM(2)的System.out.println()调用。直接的方法是: JVM A执行一个系统命令来启动JVM B JVMA然后从B读取所有输出 请参阅以了解如何做到这一点(本质上,调用javasomeclass…或任何其他随后写入stdout/stderr的命令之间没有区别) 如果两个JVM独立启动,那么剩下的唯一选项就是B的“start命令”将所有输出重定向到一个文件中。然后,根据操作系统的不同,您只能希望另一个

我有一个启动JVM(2)的JVM(1)。我希望能够监视JVM(1)中来自JVM(2)的System.out.println()调用。

直接的方法是:

  • JVM A执行一个系统命令来启动JVM B
  • JVMA然后从B读取所有输出
请参阅以了解如何做到这一点(本质上,调用
javasomeclass
…或任何其他随后写入stdout/stderr的命令之间没有区别)


如果两个JVM独立启动,那么剩下的唯一选项就是B的“start命令”将所有输出重定向到一个文件中。然后,根据操作系统的不同,您只能希望另一个JVM能够及时看到该文件的所有更新。

您实际上在一个Java程序中有两个单独的JVM,还是两个线程?两个单独的JVM。JVM(1)启动JVM(2),但我需要JVM(1)来监视JVM(2)的System.out消息请粘贴JVM-1中启动JVM-2的代码片段,这样我们就可以找到集成点来捕获JVM-2的输出。