Я открыл вопрос почти год назад о пакете композитора я люблю: Jobby (это позволяет управлять задачами Cron в PHP): see issueкомпозитора пакет: как требовать поставщика Lib автозагрузки
Моей проблемой с этим пакет, что Лив композитор поставщик жестко закодирован в файл с именем BackgroundJob.php (see file)
if (file_exists('vendor/autoload.php')) {
require('vendor/autoload.php');
} else {
require(dirname(dirname(dirname(dirname(dirname(__DIR__))))) . '/vendor/autoload.php');
}
но мой каталог поставщика не является «поставщиком», но «PHP/Lib», и это не ДОГОВОРНОЕ;)
Мое уродливое решение - это путь жесткого кода к файл автозагрузки, но затем мне нужно вручную редактировать BackgroundJob.php каждый раз, когда я устанавливаю lib.
Как производитель lib может быть любой глубиной, я действительно блуждаю, что является ХОРОШИМ решением этой проблемы: очевидно, Jobby - это не единственный пакет, который требует запуска других библиотек из композитора. Не могли бы вы указать мне на библиотеку, которая обрабатывает это, чтобы я мог взглянуть на нее или дать вам свои мысли?
Благодаря
Я понимаю ваше объяснение, но когда я начал работать с композитором, я увидел, что опция «vendor-dir» доступна. Если для некоторых библиотек является обязательным использование этого каталога, его следует удалить или по крайней мере, но на нем будет очень большой предупреждающий флаг! ? – hugsbrugs
Но параметр 'vendor-dir' не предназначен для установки пользователями в другой каталог, чем' vendor'. Могу ли я спросить вас, почему ваш проект использует 'php/lib' вместо' vendor', даже если вы сказали, что он не подлежит обсуждению? Может быть, это легче изменить, чем прикрутить все преимущества композитора. –