【问题标题】:Composer local packagesComposer 本地包
【发布时间】:2015-03-28 23:14:36
【问题描述】:

我无法让 composer 与本地包正常工作。

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,这是包 A 的唯一依赖项。

我找不到关于这个 @google 的任何信息,看起来 composer 无法处理本地包中的那种复杂性。希望我错了。

为了更好地理解这个问题,这里有一个小插图。

【问题讨论】:

标签: composer-php


【解决方案1】:

Composer doesn't load local repos recursively.

1) 您可以在 A 中声明 B 和 C 的依赖关系。您必须在 composer.json 中重新定义依赖关系。在这里,这将为 A 的 composer.json 添加更多的需求和存储库定义。

2) 或者您可以设置一个本地 Satis 代理,为您的私人包提供服务。

依赖项的私人或公开发布将解决这种情况。

【讨论】:

    猜你喜欢
    • 2014-04-25
    • 2016-06-25
    • 1970-01-01
    • 2018-02-02
    • 1970-01-01
    • 1970-01-01
    • 2019-03-16
    • 2019-01-22
    • 2019-10-25
    相关资源
    最近更新 更多