Допустим мы имеем следующую структуру каталогов, мы предполагаем my-package
также существует на Packagist:Как заставить Composer загрузить локальный пакет?
- apps
\_ my-app
\_ composer.json
- packages
\_ my-package
\_ composer.json
Чтобы добавить my/package
как зависимость моего-приложения, the documentation состояния мы можем использовать следующую конфигурацию:
{
"repositories": [
{
"type": "path",
"url": "../../packages/my-package"
}
],
"require": {
"my/package": "*"
}
}
Однако, когда я composer update
, зависимость по-прежнему загружается из Packagist. Таким образом, чтобы видеть, я отключил Packagist.org:
{
"repositories": [
{
"type": "path",
"url": "../../packages/my-package",
"packagist.org": false
}
],
"require": {
"my/package": "*"
}
}
я очистил кэш с composer clearcache
, удалены my/package
с composer remove my/package
и установил его снова composer require my/package --prefer-source
(я не понимаю, если --prefer-source
только для VCS). Загруженный пакет по-прежнему не является локальным. Как заставить композитора использовать локальный?