[英]ProcessBuilder cannot find sh file in resources folder - Spring Boot
[英]Providing sh file as input parameter to ProcessBuilder
我的代码是这样的
final String[] cmdArray = {
"sh", "./invoke_payment_files_generator.sh",
String.valueOf(paymentBatchId)
};
final ProcessBuilder processBuilder = new ProcessBuilder(cmdArray);
processBuilder.redirectErrorStream(true);
但是它无法读取文件,并出现错误:没有这样的文件或目录。.能否请您提供将sh文件作为输入参数提供给ProcessBuilder的可能方法。
您可能要使用/bin/sh
而不是仅使用sh
。
此外,正如@ user432所提到的,如果您的Shell脚本不在Java应用程序的工作目录中,则可能要使用它的directory(String)
方法显式设置ProcessBuilder
的工作目录。 另外,您可以指定shell脚本的绝对路径,而不仅仅是./
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.