我正在尝试使用Java类中的Runtime.exec函数从另一个jar运行可执行jar 。
代码是
Runtime r = Runtime.getRuntime();
Process p = r.exec("java -jar \""+_JarPath +"\" " + "\""+ args[0]+"\""+ " " +"\""+ args[1]+"\""+ " " +"\""+ args[2]+"\"" + " " +"\""+ args[3]+"\"");
在这里,参数args
不是null且定义明确。
这段代码在Windows平台上可以正常运行,但是在Linux上却出现错误
无法访问jarfile“ /opt/mydir/lib/MyFol/mytest.jar”
我已经阅读了其他类似的问题,并确保
/opt/mydir/lib/MyFol/
和文件mytest.jar
拥有所有权限我在Linux上使用OpenJDK。
尝试不使用双引号。我怀疑可能不是shell被调用而是Java被直接调用的问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句