动力无限/composer-custom-directory-installer

(由mnsami/composer-custom-directory-installer派生) 一个Composer插件,用于帮助在不同路径下安装不同类型的包。

资助包维护!
mnsami

安装次数: 8,306

依赖者: 0

建议者: 0

安全: 0

星星: 0

关注者: 0

分支: 27

类型:composer-plugin

2.0.1 2022-06-08 10:01 UTC

README

一个Composer插件,用于在默认的Composer默认安装路径(在vendor文件夹中)之外的自定义目录中安装不同类型的Composer包。

这并不是另一个支持非Composer包类型的composer-installer库,例如application等。这只是为了增加将Composer包安装在外部vendor文件夹之外的灵活性。此包仅支持composer包类型,

https://getcomposer.org.cn/doc/04-schema.md#type

包的类型。默认为library。

包类型用于自定义安装逻辑。如果您有一个需要特殊逻辑的包,您可以定义一个自定义类型。这可以是symfony-bundle、wordpress-plugin或typo3-module。这些类型将特定于某些项目,并且它们需要提供能够安装该类型包的安装器。

如何使用

  • 将Composer插件包含到您的composer.json文件的require部分:
  "require":{
    "php": ">=5.3",
    "mnsami/composer-custom-directory-installer": "1.1.*",
    "monolog/monolog": "*"
  }
  • extra部分定义您想要将包安装到的自定义目录:
  "extra":{
    "installer-paths":{
      "./monolog/": ["monolog/monolog"]
      }
    }

通过添加installer-paths部分,您告诉Composer将monolog包安装在您的根目录下的monolog文件夹中。

  • 作为新增功能,我们在定义下载目录方面增加了更多灵活性,类似于composer/installers,换句话说,您可以在installer-path部分使用变量,如{$vendor}{$name}
  "extra": {
    "installer-paths": {
      "./customlibs/{$vendor}/db/{$name}": ["doctrine/orm"]
    }
  }

上述操作将使doctrine/orm包安装到您项目的根目录下的customlibs文件夹中。

注意

此安装器不支持Composer的type: project,因为类型为project的包仅适用于与应用程序外壳(如symfony/framework-standard-edition)一起使用,由另一个包要求。