Я некоторое время искал решение в Интернете, но ни одно из них не дает четкого представления о том, как будет выполняться файл sh.
У меня есть сценарий оболочки install.sh
, который я сохранил вresources
каталог.Я хочу запустить это из ProcessBuilder.Что бы я ни пытался, я получаю ошибку No such file or directory
.Это мой код:
String masterURL = config.getMasterUrl();
String adminToken = config.getAdminToken();
ProcessBuilder installScriptBuilder = new ProcessBuilder();
installScriptBuilder.command("install.sh", dir, namespace);
installScriptBuilder.redirectOutput(ProcessBuilder.Redirect.INHERIT);
Map<String,String> installEnv = installScriptBuilder.environment();
installEnv.put("URL", masterURL);
installEnv.put("TOKEN", adminToken);
try {
Process p = installScriptBuilder.start();
} catch (IOException e) {
e.printStackTrace();
}
Я читал о создании временного файла в других ответах, но никто не показывает, как решить эту проблему с этим.Я использовал Spring Initializr для создания моего проекта.