Я пытаюсь сделать
exec(java -jar "C:\batik\batik-rasterizer.jar" -m image/png -d "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.png" -w 800 "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.svg");
это не дает мне никаких результатов, может кто-нибудь предположить, что я делаю неправильно.
машина Windows 2008 R2 предприятие iis 7 с fastcgi
exec ('java -version')
У вашего компьютера отключен UAC? (Windows 7 или Vista, доступ к C: с отсутствующими кликами UAC, будет ошибкой, поэтому для простоты отключите его),
Во-вторых, exec требует ввода строки,
В-третьих, нужно бежать, как сказал Филл
exec('java -jar "C:/batik/batik-rasterizer.jar" -m C:/pathto/image/png -d "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.png" -w 800 "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.svg"');
ОБНОВЛЕНО ДЛЯ КОММЕНТАРИИ НА ФИЛЛЫ
Убедитесь, что вы разрешили использовать exec / system / backticks, используя CLI
<?php exec("echo hello"); ?>
<?php exec("echo hello"); ?>
внутри его сохранить его если это не работает, проверка java работает без пути к exe, в окнах cmd введите java --help
и посмотрите, работает ли она
Возможно, вы захотите проверить путь вперед и назад
exec(java -jar "C:\batik\batik-rasterizer.jar" -m image/png -d "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.png" -w 800 "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.svg");
может попытаться слэш:
exec('java -jar "C:/batik/batik-rasterizer.jar" -m image/png -d "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.png" -w 800 "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.svg"');
или прямой косой черты w / param path:
exec('java -jar "C:/batik/batik-rasterizer.jar" -m C:/pathto/image/png -d "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.png" -w 800 "C:/pathtoimg/temp/2fa8af078803491746235057c546c1b6.svg"');
UPDATE жаль, что я думаю, что это обратная косая черта
может попытаться вернуть косую черту:
exec('java -jar "C:\batik\batik-rasterizer.jar" -m image\png -d "C:\pathtoimg\temp\2fa8af078803491746235057c546c1b6.png" -w 800 "C:\pathtoimg\temp\2fa8af078803491746235057c546c1b6.svg"');
или обратная косая черта с параметром:
exec('java -jar "C:\batik\batik-rasterizer.jar" -m C:\pathto\image\png -d "C:\pathtoimg\temp\2fa8af078803491746235057c546c1b6.png" -w 800 "C:\pathtoimg\temp\2fa8af078803491746235057c546c1b6.svg"');
Также, как указал Barkermn01, exec () требует ввода строки