项目模块中需要执行
java -jar /etc/tool/invoke.jar arg1 "arg2"
其中invoke.jar在服务器/etc/tool目录下。
将项目打成jar包为connector.jar,执行
java -jar /home/connector.jar
报错:Cannot run program " /etc/tool/invoke.jar " in directory …error=2,No such file or directory
解决方法:
// 参数需要逗号分割,arg2参数是字符串
String[] args=new String[]{
"java","-jar","invoke.jar","arg1","\"arg2\""};
//如下方式报错
//String[] args=new String[]{"java -jar","invoke.jar","arg1 \"arg2\""};
ProcessBuilder processBuilder = new ProcessBuilder(args);
// invoke.jar所在的目录
processBuilder.directory(new File("/etc/tool"));
Process proc=process.start();
// 省略....