1

我正在尝试使用 ProcessBuilder 从我的 Java 代码在 Windows 7 中运行外部 .exe 程序

ProcessBuilder pb = new ProcessBuilder("C:\\hMetis\\1.5.3-win32\\hmetis.exe", "test.hgr", "2", "1", "10", "1", "1", "1", "0", "0");
Process process = pb.start();

但是,当我使用 cmd 从 Windows 运行这个独立的 .exe 时,它​​会在命令提示符中输出结果并生成包含结果的文件。从 Java 运行 .exe 时,我没有看到这两种情况发生

有什么建议我错过了什么?

4

1 回答 1

4

尝试使用它来设置工作目录:

File f = new File("C:\\hMetis\\1.5.3-win32");
ProcessBuilder pb = new ProcessBuilder("cmd", "/c","start","hmetis.exe", "test.hgr", "2", "1", "10", "1", "1", "1", "0", "0");
pb.directory(f);
Process process = pb.start();
于 2013-07-23T12:06:28.703 回答