Что такое двоичный код поставщика? #Любой сценарий командной строки, который пакет Composer хотел бы передать пользователю, устанавливающему пакет, должен быть указан как двоичный код поставщика. Если пакет содержит другие сценарии, которые не нужны пользователям пакета (например, скрипты сборки или компиляции), этот код не должен быть указан как двоичный код поставщика. Как он определяется? #Это определяется добавлением ключа { "bin": ["bin/my-script", "bin/my-other-script"] } Что означает определение поставщика? Двоичные в composer.json делать? #Он инструктирует Composer установить бинарные файлы пакета в Это удобный способ выставить полезные сценарии, которые в противном случае были бы скрыты глубоко в каталоге Что происходит, когда Composer запускается на composer.json, определяющем двоичные файлы поставщиков? #Для двоичных файлов, которые пакет определяет напрямую, ничего не происходит. Что происходит, когда Composer запускается на composer.json, который имеет зависимости от бинарных файлов поставщика? #Композитор ищет двоичные файлы, определенные во всех зависимостях. Символьная ссылка создается из двоичных файлов каждого зависимостей в Скажем, пакет { "name": "my-vendor/project-a", "bin": ["bin/project-a-bin"] } Запуск Скажем, у проекта { "name": "my-vendor/project-b", "require": { "my-vendor/project-a": "*" } } Запуск В этом случае Composer сделает Как насчет Windows и .bat файлов? #Пакеты, полностью управляемые Composer, не должны содержать никаких
Пакеты, которые должны поддерживать рабочие процессы, которые могут не включать Composer, могут поддерживать пользовательские Можно ли установить двоичные файлы поставщиков где-нибудь помимо vendor/bin? #Да, есть два способа указать двоичное расположение альтернативного поставщика:
Пример современного выглядит следующим образом: { "config": { "bin-dir": "scripts" } } Запуск Вы можете установить |