我正在尝试安装最新版本的Zend Framework 2
与composer,并同时安装至少一个其他包。另一个包是另一个Zend Framework
包。这两个包是:zendframework/zendframework
zendframework/zendservice-twitter
我将zendframework/zendservice-twitter
添加到该文件的require部分。看起来没有任何其他部分可以用来在同一目录树中安装多个包。但是当我尝试将zendframework/zendservice-twitter
添加到composer.json
文件的require部分时,它告诉我zendframework/zend-uri
是必需的。但是zendframework/zend-uri
是通过zendframework/zendframework
包安装的。它列在该composer.json
文件的replace部分中。显然,replace部分不是添加其他需要安装的软件包的地方。但你不能有多个作曲家。json文件在同一目录中,所以它是甚至可能安装Zend Framework 2
和ZendServiceTwitter
在同一安装与作曲家?
当我从https://packages.zendframework.com/#composer下载一个包作为zip文件时,我得到一个编写器。zip文件中的Json文件,但它没有在https://packages.zendframework.com上使用的相同存储库设置。所以我不确定那个作曲家是否。Json文件是为了升级或重新安装而编辑的。
有没有办法告诉编写器这是一个循环依赖?
我没有看到循环依赖。twitter包需要zend-uri
,而zend-uri
由您已经安装的主Zend Framework包提供。
我刚刚在骨架应用程序的新结帐上尝试了这个,它工作得很好。我所做的就是将twitter包添加到composer.json
的require
部分:
"require": {
"php": ">=5.3.3",
"zendframework/zendframework": "2.3.*",
"zendframework/zendservice-twitter": "~2.1.0"
}
(2.1.0是目前的最新版本。)您不需要触摸replace
部分