Кто-нибудь знает, как composer install
для всех подпапок тоже? Композитор поддерживает это? Теперь мне нужно выполнить эту команду в каждой подпапке или добавить все подпапки vendor
папка для мерзавца.
Я нашел решение в Linux:
https://www.bram.us/2014/02/16/installing-dependencies-in-all-subfolder-organised-projects/
Но как сделать то же самое в Windows?
Пример.
У меня есть проект в C:\grav
с composer.json
в этом.
Но также у меня есть папка плагинов C:\grav\user\plugins
с composer.json
в некоторых подпапках:
Я хочу выполнить composer install
в C:\grav
установить все зависимости в каждом C:\grav\user\plugins\*
тоже.
Grav плагин или тема
Чтобы поддерживать правильные установочные папки для плагинов и тем Grav,
вам нужно будет добавить composer/installers
к require
раздел ваших плагинов.
Обычно плагины также попадают в папку vendor, но установщик Grav сообщает Composer правильную позицию внутри проекта Grav, см.
увидеть https://github.com/composer/installers/blob/master/src/Composer/Installers/GravInstaller.php#L6
Таким образом, при написании плагинов или тем для каждого грав composer.json
должен указать type
как grav-plugin
или же grav-theme
, иначе Composer не может сопоставить пакет с установщиком.
{
"name": "your/some-grav-plugin",
"type": "grav-plugin",
"require": {
"composer/installers": "^1.0.23"}
}
Грав основной проект
Теперь в вашем основном проекте composer.json
Просто добавьте плагины.
Тогда беги composer install
, Это означает, что пакет извлекается, установщик составителя извлекается, в зависимости от типа пакета запускается соответствующий установщик, а установщик grav перетаскивает файл в нужную папку ….
Но как сделать то же самое в Windows?
Хм … Композитор работает кроссплатформенно. Не проблема.
Других решений пока нет …