我尝试使用以下代码在 Windows 中启动 CMD 应用程序,但它没有按预期工作。来自不同网站的几个示例表明,“cmd”作为 ProcessBuilder 构造中的参数应该有效。
我需要做什么才能让我的 Java 应用程序在 Windows 中打开 CMD 应用程序?
public class JavaTest
{
public static void main(String[] args)
{
ProcessBuilder pb = new ProcessBuilder("cmd");
try
{
pb.start();
System.out.println("cmd started");
}
catch (IOException e)
{
System.out.println(e.getMessage());
}
}
}
当我尝试使用一个不存在的应用程序时,它实际上打印出一个错误,这意味着它实际上运行了“CMD”。但是 CMD 应用程序没有按预期弹出?
最佳答案
要将它与 ProcessBuilder 一起使用,您必须像这样分隔命令:
final List<String> commands = new ArrayList<String>();
commands.add("cmd.exe");
commands.add("/C");
commands.add("start");
ProcessBuilder pb = new ProcessBuilder(commands);
pb.start();
关于java - 使用 ProcessBuilder 启动 CMD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10954194/