PHP запустить файл JAR на Ubuntu

Рассмотрим этот код:

<?php
$output=shell_exec('ls');
shell_exec('java -jar gimtadieniai2.jar');
echo $output;
?>

Строка с ‘ls’ просто проверяет, работает ли она.

Цель состоит в том, чтобы выполнить Java с «gimtadieniai2.jar». Когда выполняется вручную с терминала, это работает. Обратите внимание, что файл JAR выбирает информацию из одного файла и помещает ее в другой файл.

Моя проблема в том, что PHP-код не работает. Есть идеи почему?

0

Решение

Я не уверен, если нет ошибки.

Если бы все было хорошо, то Main класс в исполняемом файле jar должен не возвращать вывод и делать безопасный выход. Если это не так, но возвращает какой-то вывод, используйте echo shell_exec(.... и посмотрим, есть ли разница.

Другая возможная причина, я думаю, classpath доступны для java,
jar файл может находиться в той же папке, что и php файл.
Но java не может загрузить jar с того же пути php,
Вы лучше введите абсолютный путь к файлу из jar файл. Это может решить проблему.

1

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

Как насчет пути? Файл jar находится в той же папке скрипта php? Если так, попробуйте shell_exec('java -jar ./gimtadieniai2.jar');

0

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