祝所有专家美好的一天,
希望对我这个小问题有一些建议。
我尝试执行以下语法,同时将参数 testcase1
、testdata1
和 testresult
传递给 jar_filepath
、tc
、test_data
和 test_result
分别
Runtime.getRuntime().exec("cmd/c start cmd/k java -jar "+jar_filepath + tc + test_data + test_result);
但是执行时出现如下错误:
错误:无法访问 jarfile C:\TestAutomation\Jar\Test1.jartestcase1testdata1testresult2
,其中未应用所有参数的空间。
希望就编写在 exec() 级别执行的代码的正确方法提供建议。
提前谢谢您。
最佳答案
您的方式不会在参数前添加空格。看起来像这样:
Runtime.getRuntime().exec("cmd /c start cmd /k java -jar "
+ jar_filepath + " " + tc + " " + test_data + " " + test_result);
但是如果您使用String[]
,这会自动完成:
String[] command = {
"cmd /c start",
"cmd /k java -jar " + jar_filepath,
tc,
test_data,
test_result
};
Runtime.getRuntime().exec(comand);
关于java - 执行 Runtime.getRuntime().exec(),参数之间留有空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39036002/