从另一个java进程在Windows控制台中运行java进程

时间:2012-12-24 04:10:59

标签: java windows jar console processbuilder

我正在尝试从Java进程启动另一个Java进程。问题是我希望Windows控制台出现,而AnotherApp要写入该控制台。

此Java代码段确实启动了一个新流程,但未显示控制台。

ProcessBuilder pb = new ProcessBuilder("cmd", "/k", "java", "-jar", "AnotherApp.jar");
pb.start();

如果我从开始 - 运行

运行
cmd /k java -jar AnotherApp.jar

然后创建一个新的控制台并启动java进程。

2 个答案:

答案 0 :(得分:6)

尝试以下方法:

ProcessBuilder pb = new ProcessBuilder("cmd", "/c", "start", "java", "-jar", "AnotherApp.jar");

答案 1 :(得分:1)

另一种选择。

String cmd[]={"cmd", "/c", "start", "java", "-jar", "AnotherApp.jar"};

Runtime rt=Runtime.getRuntime();

Process p=rt.exec(cmd);

你可以获得p的输出流(将作为输入流提供给你)并将其打印到任何控制台。