0
点赞
收藏
分享

微信扫一扫

jar包调用java -jar报错“Cannot run program“

毅会 2022-01-15 阅读 48

项目模块中需要执行

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();
// 省略....


举报

相关推荐

0 条评论