我正在使用java进程构建器执行外部应用程序。
例如
./appl -file user@host:/tmp/out.log
此应用程序首先从外部主机检索文件out.log
,然后执行。
此外,执行上述命令提示后,它会提示输入主机密码。
如何使用java进程构建器实现此目的? 我试图以下面提到的方式输入命令。但是它会抛出一个错误,找不到主机。
List<String> command = new ArrayList<String>();
command.add("./appl");
command.add("-file");
command.add("user@host:/tmp/out.log");
答案 0 :(得分:0)
正如您明确提到的: 此外,执行上述命令提示后,它会提示输入主机密码。
我相信命令未被执行的原因是因为您触发的子进程需要输入(主机密码),而您没有提供。因此,您需要创建一个OutputStream
来为您的子流程提供输入。对于初学者,read this question。