我正在创建我的第一个PHP Composer包(按照这些说明)。 我已经运行了
$ composer init
我正在填写细节,现在它要求我输入:
包类型(例如:库、项目、元包、composer-plugin)[]:
我猜这只是一个人类可读的标签,用于对不同的软件包进行分类?
我想知道是否有软件包类型的定义?
我正在创建我的第一个PHP Composer包(按照这些说明)。 我已经运行了
$ composer init
我正在填写细节,现在它要求我输入:
包类型(例如:库、项目、元包、composer-plugin)[]:
我猜这只是一个人类可读的标签,用于对不同的软件包进行分类?
我想知道是否有软件包类型的定义?
Composer Package Types
默认情况下,Composer支持四种类型:
library:这是默认设置。它会将文件简单地复制到/vendor目录下。
project:表示项目而不是库。例如,应用程序壳(如Symfony标准版)、CMS(如SilverStripe安装程序)或作为软件包分发的完整应用程序。
metapackage:一个空包含有要求并会触发其安装的包,但不包含任何文件,也不会写入任何内容到文件系统。
composer-plugin:composer-plugin类型的软件包可以为其他具有自定义类型的软件包提供安装程序。只有在需要安装过程中进行自定义逻辑时才使用自定义类型。
包类型用于自定义安装逻辑。如果您有一个需要一些特殊逻辑的软件包,您可以定义一个自定义类型。这可以是一个Symfony捆绑包、WordPress插件或typo3-cms扩展。这些类型都将是特定于某些项目,并且它们将需要提供一个安装程序,能够安装该类型的包。