Поддержка Composer
Расширения Plesk могут использовать Composer для установки зависимостей и управления ими. Подробную информацию о Composer можно найти на сайте: https://getcomposer.org/.
В этом разделе мы расскажем, как правильно настроить расширение, если оно использует менеджер зависимостей Composer.
Чтобы проиллюстрировать эту настройку, Plesk предлагает следующий пример проекта: https://github.com/plesk/ext-composer-example.
Настройка
Основы настройки проекта для использования Composer описаны в разделе composer.json: Project Setup документации Composer. Для успешной интеграции с Plesk необходимы следующие параметры настройки.
Пример файла composer.json.
Местоположение папки „vendor“
Рекомендуем разместить папку vendor/
следующим образом:
"config": {
"vendor-dir": "src/plib/vendor"
},
Использование пространств имен
По умолчанию при разработке расширений мы требуем выполнения Соглашения по именованию классов, чтобы гарантировать их правильную работу с Plesk. Использование Composer позволяет использовать пространства имен вместо длинных имен, которые требует Соглашение по именованию классов.
Только убедитесь, что используемые пространства имен правильно загружены в composer.json
.
"autoload": {
"psr-0": {
"Composer_": [
"modules/composer-example/library/",
"src/plib/library/"
]
},
"psr-4": {
"PleskExt\\Composer\\": [
"modules/composer-example/library/Composer/",
"src/plib/library/Composer/"
]
}
},
Более подробную информацию о пространствах имен можно найти в разделе документации Composer Autoloading.
Упаковка расширения
Процесс упаковки расширения с помощью Composer требует добавления еще одного дополнительного шага по сравнению с обычным процессом.
Установка зависимостей
Прежде всего, необходимо скачать и установить все необходимые зависимости. Для этого выполните следующую команду:
composer --no-dev install
Примечание: Опция --no-dev
используется, чтобы установить только библиотеки, необходимые для версии продукта. Все остальные зависимости и правила, используемые для разработки и тестирования, опускаются.
Более подробную информацию об установке зависимостей смотрите в разделе документации Composer Installing Dependencies.
Создание пакета
Как только зависимости установлены, вы можете создать архив ZIP.