【发布时间】:2016-08-19 09:51:09
【问题描述】:
各位专家大家好,
希望对我这个琐碎的问题有一些建议。
我正在尝试执行以下语法,同时将参数 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);
但是,在执行时,出现如下错误:
Error: Unable to access jarfile C:\TestAutomation\Jar\Test1.jartestcase1testdata1testresult2 未应用所有参数的空间。
希望对编写代码以在 exec() 级别执行的正确方法提出建议。
提前谢谢你。
【问题讨论】:
-
嗯,你必须在参数字符串前面包含空格。或者传递一个
String[],将每个参数作为一个元素。 -
您好乔恩,感谢您的反馈。我相信我确实在参数字符串前面添加了空格,按照语法 Runtime.getRuntime().exec("cmd /c start cmd /k java -jar "+jar_filepath + tc + test_data + test_result);
-
至于你的第二个建议,你的意思是参数首先存储在一个数组中,然后在 exec() 中调用它作为一个数组本身而不是单独作为元素?非常感谢您的建议和努力。
标签: java runtime executable