Есть две вещи, которые нужно отметить сразу же ...
- Сценарий оболочки работает нормально вручную
- Простой сценарий оболочки (echo hello), который я написал, прекрасно работает через java
Итак, у меня есть сценарий оболочки, который я пытаюсь запустить через процесс Java.
File sqlF = new File("path to deploy script");
Process proc = rt.exec(sqlF + "/deploy.sh");
proc.waitFor();
System.out.println(proc.exitValue());
Когда я запускаю этот код, я получаю неоднозначное возвращаемое значение «1».
Вот сценарий оболочки (потому что я думаю, что проблема может возникнуть отсюда):
#!/bin/bash
mysql -u XXXX -h XXXXX < XXXXX.sql
mysql -u XXXX -h XXXXX database < DEPLOY-HELPER.sql
Есть идеи, почему это не будет работать должным образом с Java?