@ff0xff

Почему phar не видит включаемый файл?

Подскажите, я собрал небольшое консольное приложение на php в phar пакет
использовал box с таким конфигом
{
  "chmod": "0755",
  "directories": [
    "src"
  ],
  "main": "main.php",
  "output": "boot.phar",
  "stub": true
}


Все собралось отлично, из папки запускаю пакет работает, переношу на другую машину и получаю странную ошибку.

php boot.phar
PHP Warning: require_once(./src/Kernel.php): failed to open stream: No such file or directory in phar:///var/bin/boot.phar/main.php on line 3
PHP Fatal error: require_once(): Failed opening required './src/Kernel.php' (include_path='.:/etc/php7/lib/php') in phar:///var/bin/boot.phar/main.php on line 3


Кто подскажет в чем может быть дело? как то до конца не могу осознать, почему он не может в пакете найти main.php если собрал его?
  • Вопрос задан
  • 49 просмотров
Решения вопроса 1
zorca
@zorca
Откройте архив и проверьте его содержимое.5d3f22c785b2d672026265.jpeg
Измените пути к включаемым файлам на пути с указанием текущей директории через константу __DIR__.
Еще лучше будет, если все файлы проекта будут подключаться через Composer.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы