|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
|
SkyTello |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 16.5.2018 Репутация: нет Всего: нет |
Добрый день.
Хочу написать движек сайтов на yii2 и задумывается структура проектов с двумя composer.json Первый будет отвечать за все общие зависимости для движка, тоесть пакет с yii2 и т.п. Второй будет на каждом сайте свой и подтягивать все пакеты и зависимости в свой vendor которые нужны конкретно этому проекту. Для осуществления данной задумки хотел использовать composer-merge-plugin в json проекта устанавливаю и прописываю настройки к главному json файлу:
Проблема наступает при composer update того джейсона который относится непосредственно к проекту. он начинает тянуть все содержимое указанное в главном файле json хотя оно уже и так было скачано в общий vendor. Получается что фреймворк у меня сразу в двух местах находится и это естественно не то что задумывалось. Можно ли сделать таки как это сделать, чтоб компосер проекта не тянул уже скаченные пакеты из основного json файла если они уже и так были скачаны и находятся в своем вендоре, а тянул только то что прописано в проектном json и только те зависимости которых нет в основном? |
|||
|
||||
Vardoulacha |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 183 Регистрация: 11.8.2005 Репутация: 7 Всего: 8 |
Для этого вы свой движок делаете library, а проект делаете project, который создается как create-project (по факту делается клон репы и запуск composer install), таким образом в проекте будет по умолчанию всего одна зависимость от вашего ядра, и лежать ядро будет в vendor, а дальше к проекту цепляйте что хотите.
в качестве примера (никакой рекламы, проект для своих нужд) вот мое ядро https://github.com/Lemurro/core а вот api-сервер, который использует это ядро https://github.com/Lemurro/server и у него в composer.json только зависимость от ядра, а дальше к проекту можно цеплять что угодно "require": { "php": ">=7.0.0", "lemurro/core": "^0" }, Плюс в том что движок можно легко обновлять как любую зависимость |
|||
|
||||
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |