Можно подумать, что запуск файла bat из Java будет простой задачей, но нет ... У меня есть файл bat, который выполняет некоторые команды sql для цикла значений, считываемых из текстового файла. Это более или менее так:
FOR /F %%x in (%CD%\listOfThings.txt) do sqlcmd -Slocalhost\MSSQL %1 %2 -d %3 -i %CD%\SQLScripts\\%%x
exit
Не беспокойтесь о специфике, они не важны. Я хочу просто запустить этот bat-файл из Java и дождаться окончания выполнения. Видимо это не легко. Что у меня есть, так это:
Runtime.getRuntime().exec("cmd /K start SQLScriptsToRun.bat"
+" -U"+getUser()
+" -P"+getPass()
+" " + projectName);
return true;
Проблема в том, что метод exec () возвращается немедленно. Файл летучей мыши работает в течение 2-3 минут. Я пытался удалить начало, но безрезультатно. Я перепробовал много вариантов, но это ни к чему не привело. Любые идеи о том, как сделать это простое задание?