我正在尝试使用composer安装最新版本的Zend Framework 2
,并同时安装至少一个其他软件包。另一个包是另一个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
文件的替换部分中。显然,替换部分不是添加其他需要安装的软件包的地方。但是,您不能在同一目录中拥有多个composer.json文件,因此甚至可以在与composer相同的安装中安装Zend Framework 2
和ZendServiceTwitter
吗?
当我从https://packages.zendframework.com/#composer下载一个包作为zip文件时,我在zip文件中获得了一个composer.json文件,但它没有与https://packages.zendframework.com中使用的相同的存储库设置}。因此,我不确定是否要编辑该composer.json文件以进行升级或重新安装。
有没有办法告诉作曲家这是一个循环依赖?
答案 0 :(得分:2)
我没有看到循环依赖。 twitter包需要zend-uri
,zend-uri
由您已经安装的主Zend Framework包提供。
我刚试了一下这个骨架应用程序的新结帐,它运行正常。我所做的就是将twitter包添加到require
的{{1}}部分:
composer.json
(2.1.0是目前的最新版本。)您无需触摸"require": {
"php": ">=5.3.3",
"zendframework/zendframework": "2.3.*",
"zendframework/zendservice-twitter": "~2.1.0"
}
部分。