abhijitrakas / composer-installers-extender

扩展 composer/installers 插件以接受任何任意软件包类型。

2.0.2 2021-04-15 15:39 UTC

README

注意:这是一个临时分支,用于测试来自 oomphinc#26 的安装程序名称修复。这不是一个永久的仓库,你应该关注该问题,因为总有一天它会消失。

Composer 安装程序扩展器

composer-installers-extender 是一个用于 Composer 的插件,它允许将任何软件包安装到项目中的默认 vendor 目录之外的目录。此插件扩展了 composer/installers 插件,允许任何任意软件包类型通过它们的自定义安装程序进行处理。

composer/installers 插件支持有限数量的软件包类型,我们认识到需要将任意软件包类型安装到除 vendor 之外的特定目录。此插件允许 composer/installers 插件处理更多软件包类型,从而受益于它们显式的安装路径映射和软件包属性的标记替换。

如何安装

oomphinc/composer-installers-extender 添加为项目的依赖项

$ composer require oomphinc/composer-installers-extender

此插件需要至少 PHP 7.1。如果你使用的是较低的 PHP 版本,请使用最新稳定的 1.x 版本

$ composer require oomphinc/composer-installers-extender:^1.1

如何使用

composer/installers 插件是此插件的依赖项,如果尚未要求,它将自动要求。

要支持更多软件包类型,请在 composer.json 中的 extra 属性中添加这些类型的数组

{
    "extra": {
        "installer-types": ["library"]
    }
}

然后,您可以以与添加由 composer/installers 支持的软件包类型相同的方式添加这些类型的软件包映射

{
    "extra": {
        "installer-types": ["library"],
        "installer-paths": {
            "special/package/": ["my/package"],
            "path/to/libraries/{$name}/": ["type:library"]
        }
    }
}

默认情况下,未指定 type 的软件包将被视为 library 类型。添加对此类型的支持允许将任何此类软件包放置在不同的安装路径中。

如果类型已添加到 installer-types 中,则插件将尝试在映射中查找显式的安装程序路径。如果没有匹配项(无论是按名称还是按类型),则将使用所有软件包的默认安装程序路径。

请参阅 composer/installers 的 README 以了解软件包和类型匹配的支持语法以及路径中支持替换标记(例如,{$name})。

许可

MIT 许可证