Java processbuilder执行jar

Java processbuilder执行jar,java,eclipse,processbuilder,Java,Eclipse,Processbuilder,我试图使用process builder执行一个jar,但它在每个术语之间都使用逗号 ProcessBuilder processBuilder=new ProcessBuilder("Java","-jar","D:/tools/censeo.jar","SourcePath" +javaFileDir+ "-OutputType","xml","OutputPath"+javaFileDirectory+"\""); Process process=processBuilder.start

我试图使用process builder执行一个jar,但它在每个术语之间都使用逗号

ProcessBuilder processBuilder=new ProcessBuilder("Java","-jar","D:/tools/censeo.jar","SourcePath" +javaFileDir+ "-OutputType","xml","OutputPath"+javaFileDirectory+"\"");

Process process=processBuilder.start();

使用processbuilder执行jar的格式正确吗?

java
命令应该是lowercase@Reimeus取决于操作系统,但这不会造成伤害;)代码在我的系统上似乎可以正常工作(当然,我没有jar文件)。你能发布你得到的命令行吗?为什么你认为它错了?@sigpwned我试着打印命令,但它是这样打印的:Java,-jar,D:/tools/censeo.jar,-SourcePath D:/abc OutputType,xml,-OutputPath D:/abc这看起来像是将
列表打印到
System.out
的结果。是否打印的是
列表而不是字符串?(例如,
System.out.println(processBuilder.command());
?)如果是这样,那是意料之中的——这正是转换为字符串的
列表的样子。一旦创建了
进程
(称之为
p
),请尝试打印从
p.getErrorStream()
读取1000个字符的结果。这将显示底层shell的
stderr
的内容,这可能会告诉我们发生了什么。如果结果为空,请确保正确读取,然后尝试从p.getOutputStream()读取。