Я думаю, вы должны идти этим путем, прежде чем отправлять его в JSON.
$params['body']['query']['filtered']['filter']['bool']['must'][0]["term"]['pprCategories']= "category1";
$params['body']['query']['filtered']['filter']['bool']['must'][1]["term"]['country_name']= "country1";
$params['body']['query']['filtered']['filter']['bool']['must'][2]["term"]['population_name']= "population1";
$params['body']['query']['filtered']['filter']['bool']['must'][3]["term"]['kilometers_amount']= "55145";
Пакетные файлы не являются исполняемым файлом. Им нужно приложение для выполнения их (т.е. cmd).
На UNIX, файл сценария имеет хижину (#!) в начале файла для определения программы, которая выполняет его. Двойной щелчок в Windows выполняется Windows Explorer. CreateProcess
ничего не знает об этом.
Runtime.
getRuntime().
exec("cmd /c start \"\" build.bat");
Примечание: С эти start \"\"
команда, отдельное окно команд будет открыто с пустым заголовком, и любой вывод от пакетного файла будет отображен там. Это должно также работать только с 'cmd/c build.bat", в этом случае вывод может быть считан из подпроцесса в Java при желании.
ProcessBuilder является Java 5/6 способ выполнить внешние процессы.
Исполняемый файл, используемый для выполнения сценариев пакетной обработки, cmd.exe
, который использует эти /c
флаг для определения названия пакетного файла для выполнения:
Runtime.getRuntime().exec(new String[]{"cmd.exe", "/c", "build.bat"});
Теоретически необходимо также быть в состоянии выполнить Scons этим способом, хотя я не протестировал это:
Runtime.getRuntime().exec(new String[]{"scons", "-Q", "implicit-deps-changed", "build\file_load_type", "export\file_load_type"});
РЕДАКТИРОВАНИЕ: Амара, Вы говорите, что это не работает. Ошибка, которую Вы перечислили, является ошибкой, которую Вы получили бы когда рабочий Java от терминала Cygwin на поле Windows; это то, что Вы делаете? Проблема с этим состоит в том, что Windows и Cygwin имеют различные пути, таким образом, версия Windows Java не найдет исполняемый файл сканирований на Вашем пути Cygwin. Я могу объяснить далее, оказывается ли это Вашей проблемой.