问题描述
我创建了2个composer软件包,我想在第二个软件包中使用第一个软件包,并且想在主应用程序中使用第二个软件包。
现在,当我运行composer update
时,我的主应用程序可以看到第二个软件包,但是第二个软件包却看不到第一个软件包。
我得到的错误是:
您的要求无法解决为一组可安装的软件包。
问题1
- mycompany / package1 dev-branch1的安装请求->可满足 mycompany / package1 [dev-branch1]。
- mycompany / package1 dev-branch1需要mycompany / package2 dev-master->找不到匹配的软件包。
潜在原因:
- 包裹名称中的错字
- 根据最小稳定性设置,该软件包没有足够稳定的版本,请参见 https://getcomposer.org/doc/04-schema.md#minimum-stability了解更多 详细信息。
- 这是一个私人包裹,您忘了添加自定义存储库来找到它
阅读https://getcomposer.org/doc/articles/troubleshooting.md 进一步的常见问题。
但是当我在第二个软件包中运行composer install
时,没有问题,它将第一个软件包安装到第二个软件包中。
解决方法
如果直接在主项目上添加第二个软件包,它会安装吗?如此处所述,Composer不能自行链接负载依赖性。
https://getcomposer.org/doc/faqs/why-can%27t-composer-load-repositories-recursively.md
就像文档中所说的那样,在使用私有软件包的情况下,您必须使用Satis或私有Packagist实例