首先,我已经在php.ini include_path
中安装并配置了zend framework 2。 但是当我使用 composer install
安装 zend 框架框架框架应用程序时,它会执行一些过程,然后再次将整个 zend 框架 2 下载到"供应商"目录(在我的应用程序目录中自动创建)。 请帮助我,为什么作曲家再次下载并安装整个框架,为什么它不使用已安装的副本?
简短的回答是,作曲家旨在在每个应用程序级别而不是全局安装依赖项。因此,composer.json 文件中指定的所有依赖项都将拉入项目的供应商文件夹。即使您碰巧在系统上全局安装了某个依赖项,也会发生这种情况。
Composer 不会查看您的环境 - 它会查看包指定的依赖项。
但是,您可以控制如何满足这些依赖项。
因此,您将需要一种方法来向作曲家证明正在满足依赖项。
例如,如果你使用 PEAR 安装 Zend,你可以告诉 Composer 查找 pear 包而不是下载它。
例如
{
"repositories": [
{
"type": "pear",
"url": "http://pear2.php.net"
}
],
"require": {
"zend/zend": "*",
}
}