не в состоянии выполнить команду Nutch Crawl с помощью функции php exec - PullRequest
0 голосов
/ 12 апреля 2019

Я должен запустить команды сканирования Nutch с помощью php exec, но он показывает

"0 Ошибка: JAVA_HOME не установлен"

Команда работает нормальнос терминалом .Я пробовал приведенный ниже код в crawl.php, где находится каталог apache-nutch-1.15 .

exec('apache-nutch-1.15/bin/nutch inject crawl/crawldb urls',$output);

, и это дает указанную выше ошибку.

Заранее благодарим вас за любую помощь, которую вы можете оказать.

1 Ответ

0 голосов
/ 12 апреля 2019

Чтобы запустить Nutch, вам нужно установить переменную окружения JAVA_HOME и указать правильный путь (где установлена ​​ваша JVM). Это работает на вашем терминале, потому что у вас уже есть эта переменная. Вы можете проверить это с помощью:

$ env | grep JAVA

Когда новый процесс запускается с exec из PHP, эта переменная среды не задается, поскольку она не является оболочкой, вы только запускаете процесс без какой-либо «среды оболочки». Вы можете использовать функцию putenv для указания некоторых переменных среды перед вызовом exec.

...