java - 从 Windows 使用 ProcessBuilder 执行命令

标签 java windows process processbuilder

当我尝试在 Windows 机器上从我的 java 程序执行以下行时出现以下错误。

能否请您告诉我实现该功能的详细步骤?

final Process exec = new ProcessBuilder("bash", "-c", query).start();

error : java.io.IOException: Cannot run program "bash": CreateProcess error=2, The system cannot find the file specified

最佳答案

Windows 没有 bash,因此您必须使用“CMD”(命令)。 “bash”用于 unix 系统。

这应该适用于 Windows:

final Process exec = new ProcessBuilder("CMD", "/C", query).start();

如果你想要一个关于如何在 Windows 中使用 ProcessBuilder 的好例子:External programs using Java ProcessBuilder class

关于java - 从 Windows 使用 ProcessBuilder 执行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21231560/

相关文章:

java - 数组越界将一个字节数组添加到另一个

java - 局部变量可能未初始化

java - 删除一个链接如何从链表中删除一个节点?

c++ - 如何在 Windows 上通过句柄重命名文件?

windows - CreateFile 如何以 FILE_SHARE_READ 失败并以 FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE 成功?

PHP - 子进程未正确退出

java - Hibernate,PostgreSQL - 关系列不存在

Java 绝对路径 - Mac OS X - Windows

c++ - 判断进程是否挂起

windows - Azure 表存储中的复合行键