我无法让作曲家与本地包合作。
包A:
{
"name": "package/A",
"repositories": [
{
"type": "vcs",
"url": "../B"
}
],
"require": {
"package/B": "dev-master"
}
}
包B:
{
"name": "package/B",
"repositories": [
{
"type": "vcs",
"url": "../C"
}
],
"require": {
"package/C": "dev-master"
}
}
包C:
{
"name": "package/C",
}
现在安装包B工作正常,它可以正确解析包C. 安装程序包A失败,因为它无法从程序包B解析程序包C,程序包B是程序包A的唯一依赖项。
我无法找到有关此@google的任何信息,看起来作曲家无法处理本地软件包中的这种复杂性。希望我错了。
这是一个小例子,可以更好地理解这个问题。
答案 0 :(得分:1)
Composer doesn't load local repos recursively
1)您可以在A中声明B和C的依赖关系。您必须在composer.json中重新定义依赖关系。在这里,这将为A的<。p>的composer.json添加一些需求和存储库定义
2)或者您可以设置一个本地Satis代理,它为您的私人包提供服务。
依赖项的私有或公开发布将解决这种情况。