我有一个ProcessBuilder:
String src = c:/hello/
String dst = c:/hello/2
ProcessBuilder builder = null;
builder = new ProcessBuilder("c:/file/file.exe", "-i", src, "-f", "-l 500", dst);
builder.redirectErrorStream(true);
process = builder.start();
问题在于只要我添加了
"-l 500"
,就会输出:
"l 500"无效命令
尽管我输入的是"-l 500"
而不是"l 500"
。 如果我输入"--l 500"
,我会得到:
"-l 500"无效命令
尽管-l 500
在命令提示符中运行时是有效的命令。
如果我移除"-l 500"
,它又能工作了。
我使用Processbuilder方式错了吗?
编辑:
好的,看起来如果我将"-l"和"500"作为单独的条目,像这样:
new ProcessBuilder("c:/file/file.exe", "-i", src, "-f", "-l", "500", dst);
为什么会这样?我不能使用带空格的命令作为同一条目吗?
ProcessBuilder
了吗? - hmjdfile.exe
不行。file.exe
期望参数-l
有一个关联的值,在这种情况下为500
。 - hmjd