我正在尝试通过Composer管理我的个人软件包,当我“编写器更新/安装”一个模块(这取决于另一个模块依赖于另一个模块等)时,我遇到了一些错误。
我的Admin模块中有一个composer.json文件,该文件引用并要求个人存储库“Access”:
"repositories": [
{
"type": "vcs",
"url": "git@gitlab.[hidden].com:[hidden]/php-zf2-access.git"
},
],
"require": {
[hidden]/php-zf2-access": "dev-master"
}
My Access模块有一个composer.json文件,该文件引用并需要个人存储库Basic:
"repositories": [
{
"type": "vcs",
"url": "git@gitlab.[hidden].com:[hidden]/php-zf2-basic.git"
}
],
"require": {
"[hidden]/php-zf2-basic": "dev-master"
},
当我安装/更新管理模块时,出现此错误:
您的要求无法解析为可安装的一组 包。
问题1
- Installation request for [hidden]/php-zf2-access dev-master -> satisfiable by [hidden]/php-zf2-access[dev-master]. - [hidden]/php-zf2-access dev-master requires [hidden]/php-zf2-basic dev-master -> no matching package found.
如果我“composer安装”我的Access模块,它正确加载我的Basic模块(我的composer.json访问模块中没有配置错误),那么为什么我的Admin模块无法加载Access加载Basic?
如果我将我的基本模块配置(存储库:.... basic.git + require:..... basic:“dev-master”)添加到我的composer.json管理模块,则不会出现错误,安装运行完美(但我不希望这作为解决方案)。
感谢您的帮助。
答案 0 :(得分:7)
作曲家can not load repositories recursively。如果您要管理的私有软件包彼此依赖,则最简单的方法是使用Toran Proxy或Satis。