php exec не может найти Java JVM dll, хотя запрашиваемый путь правильный

У меня есть следующий код PHP:

$compileCSS = "C:\ApacheFlexSDK\bin\mxmlc.exe
C:\inetpub\utils\css\\". $_POST['cssFileName'] . ".css" . " 2>&1";
exec ( $compileCSS, $output );
// uncomment to see the response to command
print_r($output);

Это выполняет команду, такую ​​как:

C:\ApacheFlexSDK\bin\mxmlc.exe
C:\inetpub\utils\css\sample.css 2>&1

Когда я запускаю это, я получаю следующую ошибку:

Array ( [0] => Error loading: C:\Program Files (x86)\Java\jre1.8.0_121\bin\client\jvm.dll )

C:\Program Files (x86)\Java\jre1.8.0_121\bin\client\jvm.dll правильно, и здесь есть jvm.dll.

Когда я запускаю команду непосредственно из командной строки, она отлично работает, то есть генерирует SWF-файл (mxmlc — это компилятор Apache Flex).

Не могу найти, как решить это, пожалуйста, помогите.

0

Решение

Вы должны заключить приложение в путь или параметры приложения в двойных кавычках, если они имеют пробелы:

$cmd = 'targetapp.exe "C:\my other path with spaces\targetfile.xxx"';
exec($cmd);$cmd = '"C:\my path with spaces\targetapp.exe" C:\mypathnospaces\targetfile.xxx';
exec($cmd);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]