У меня есть программа Java, которая выполняет следующий сценарий оболочки для самостоятельного перезапуска.
sleep 5
nohup java -jar /home/my-dir/MyJar.jar &
Если я запускаю сценарий из терминала, он просто работает, как и ожидалось. Однако, если Java Программа выполняет сценарий, программа запускается нормально, но ничего не записывается в выходной файл.
Я запускаю сценарий с помощью следующего кода
ProcessBuilder processBuilder = new ProcessBuilder();
processBuilder.command("/bin/sh", "/home/my-dir/start.sh");
try {
processBuilder.start();
logger.info("Successfully started");
} catch (IOException e) {
e.printStackTrace();
}