Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ProcessBuilder赢得';不带参数运行_Java_Arguments_Processbuilder - Fatal编程技术网

Java ProcessBuilder赢得';不带参数运行

Java ProcessBuilder赢得';不带参数运行,java,arguments,processbuilder,Java,Arguments,Processbuilder,我正在尝试使用ProcessBuilder运行“java-version”: processBuilder = new ProcessBuilder("java -version"); process = processBuilder.start(); 但是,我得到一个错误: java.io.IOException: Cannot run program "java -version": CreateProcess error=2, The system cannot find the fil

我正在尝试使用ProcessBuilder运行“java-version”:

processBuilder = new ProcessBuilder("java -version");
process = processBuilder.start();
但是,我得到一个错误:

java.io.IOException: Cannot run program "java -version": CreateProcess error=2, The system cannot find the file specified
当我删除“-version”并执行以下操作时:

它运行正常,我得到了正常的帮助指南输出


如何让它也运行参数?

完整的参数被解释为可执行文件。使用

ProcessBuilder processBuilder = new ProcessBuilder("java", "-version");

完整参数将被解释为可执行文件。使用

ProcessBuilder processBuilder = new ProcessBuilder("java", "-version");
构造方法摘要 ProcessBuilder(List命令)-使用指定的操作系统程序和参数构造process builder

ProcessBuilder(字符串…命令)-使用指定的操作系统程序和参数构造process builder

因此,您需要使用:

ProcessBuilder processBuilder = new ProcessBuilder("java", "-version");
构造方法摘要 ProcessBuilder(List命令)-使用指定的操作系统程序和参数构造process builder

ProcessBuilder(字符串…命令)-使用指定的操作系统程序和参数构造process builder

因此,您需要使用:

ProcessBuilder processBuilder = new ProcessBuilder("java", "-version");

你可能把事情弄得不必要的复杂。如果您只想找到运行的Java版本,请使用
System.getProperty(“Java.specification.version”)


此外,如果Java不在路径上,代码将失败,但这种方法仍然有效。

您可能使这变得不必要的复杂。如果您只想找到运行的Java版本,请使用
System.getProperty(“Java.specification.version”)


此外,如果Java不在路径上,您的代码将失败,但这种方法仍然有效。

对不起!我确实尝试过搜索与此类似的问题,但我没有尝试过搜索“参数”。对不起!我确实尝试过搜索类似的问题,但我没有尝试过搜索“参数”。谢谢!我真的应该检查一下文件:S@user2513924是的,谢谢你!我真的应该检查一下文件:S@user2513924是的,你。