ProcessBuilder不显示命令窗口

时间:2014-07-08 07:46:43

标签: java

我正在尝试从我的java代码运行.bat文件,并且我使用ProcessBuilder.java功能,如下所示:

    String[] hubCmd = new String[]{"cmd.exe", "/C", "startHub.bat"};
    ProcessBuilder pbHub = new ProcessBuilder(hubCmd);
    pbHub.directory(new File("C:\\java\\selenium\\"));
    Process hubP = pbHub.start();

这似乎有效,可以解决java进程和关联的cmd进程,但是不会显示命令窗口。我错过了什么或者这是正确的功能吗?

提前致谢。

1 个答案:

答案 0 :(得分:2)

Java的进程用于执行命令,因此它与cmd.exe一起执行。

你看到的是正确的。 cmd.exe没有用于显示窗口的“功能”。

您通常看到的“窗口”是终端仿真或某些此类事件(依旧是您的Java程序!)可以执行另一个程序,即cmd.exe

与Linux相同,其中xterm执行shell(命令解释器)。没有shell(经典样式)可以显示“窗口”。

您可以将Java程序作为“窗口”!