打开一个新的命令提示符并用Java写入它

时间:2013-06-28 21:05:52

标签: java cmd command prompt

这背后的想法是我有一个主要的类充当代理,不断运行并等待指令。然后,指示代理启动另一个扮演监视角色的类的实例。

由于监控类的每个实例都要进行大量打印(加上代理类也会打印一点点),我希望每个实例都有自己的命令窗口来完成所有打印。

这可能吗?如果没有,我欢迎有关如何获得类似效果的建议。

谢谢。

编辑:我觉得有些澄清是有道理的。我想为每个监控实例启动一个新的命令/终端窗口,并定期写入该窗口。

我显然希望能够在任何机器上运行它,但至少我希望能够在Windows上运行。

我知道有一些GUI库可用(AWT,Swing),但我希望应用程序尽可能轻量级,以便我可以最大化每台计算机上可以拥有的监视器数量。只有在没有其他选择的情况下,我才会使用GUI库。

2 个答案:

答案 0 :(得分:2)

首先,如果一个实例运行了很长时间,并且您可能需要同时运行多个实例,则需要实现多线程。特别是,考虑并发性:http://docs.oracle.com/javase/tutorial/essential/concurrency/

接下来,一旦你弄清楚如何在一个单独的线程中运行每个实例,你只需访问Runtime:

Runtime RT = Runtime.getRuntime();
RT.exec("cmd.exe /c start command", null, new File(newDir)); // for example

答案 1 :(得分:1)

有很多GUI库可以做你想要的。 AWT就是一个AWTConsoleWindow。或this一个。