【问题标题】:determine composer sub dependencies确定作曲家子依赖项
【发布时间】:2014-03-10 05:57:38
【问题描述】:

我正在对 composer 运行更新,并且在我的 composer.json 中定义的依赖项之一试图从不再存在的 repo 中提取一个子依赖项(非常烦人!)

如何确定哪些模块定义了所需的库,详细输出和空运行并没有真正给出太多指示

我的清单是:

"php": ">=5.3.3",
    "zendframework/zendframework": "2.2.*",

    "doctrine/doctrine-module": "0.8.*@dev",
    "doctrine/doctrine-orm-module": "0.8.*@dev",
    "gedmo/doctrine-extensions": "dev-master",
    "hounddog/doctrine-data-fixture-module":"0.0.*",

    "zf-commons/zfc-admin": ">=0.1.1",
    "zf-commons/zfc-user": ">=0.1.1",
    "zf-commons/zfc-user-doctrine-orm": ">=0.1.1",
    "zf-commons/zfc-base": "v0.1.2",

    "danielss89/zfc-user-admin": "dev-master",
    "bjyoungblood/bjy-authorize":"1.4.*",
    "zf-hipsters/bootstrap-flash-messenger": ">=1.0",
    "spoonx/sxbootstrap": "3.*",
    "manuakasam/sam-versioning" : "dev-master",
    "neilime/zf2-twb-bundle": "2.0",
    "rwoverdijk/assetmanager": "1.*",
    "imagine/imagine": "0.6.*@dev",
    "tawfekov/zf2entityaudit": ">=0.2-stable",
    "evandotpro/edp-superluminal": "dev-master",
    "netglue/zf2-route-layout-module": "dev-master",
    "twbs/bootstrap":"3.*",

突然开始导致问题的缺失库是backplane\zendframework

【问题讨论】:

  • 我们也有同样的问题。如果我知道更多,我会告诉你。
  • 谢谢,我相信这可能与教义或教义的依赖有关,但很难确定。
  • 我们也在使用 Doctrine,所以这是一个嫌疑犯 ;-)

标签: doctrine-orm zend-framework2 composer-php


【解决方案1】:

正如 user1786423 所指出的,将 zendframework 2.2* 和教义 0.8.* 放在一起是问题。

我所做的是我已经像这样升级到 zf 2.3.*:

"php": ">=5.3.3",
"zendframework/zendframework": "2.3.*",
"doctrine/doctrine-orm-module": "0.*"

然后composer update 一切正常。

- Updating zendframework/zendframework (dev-master 6f2d379 => dev-develop 4d8a7eb)
    Checking out 4d8a7ebdf3f628b10b9bfbf48babfaa3f903842b
- Updating doctrine/common (2.4.x-dev c94d6ff => dev-master 64e2a6a)
    Checking out 64e2a6ae51db05a1ea0525913ed0dcccdc523f01

等等

然后我需要处理另一个依赖冲突,具体针对我的配置。

【讨论】:

  • 我遇到了同样的问题,提高版本号确实有帮助。有一个固定和锁定的依赖关系可能会破坏构建过程,这有点令人遗憾。我很难过。
【解决方案2】:

backplane/zendframework 是 zf2 的分支,后来被删除,它定义了 composer 包“替换” zf2 并且可能会显示您的依赖项何时无法满足 - composer 尝试了一些替代方案并发现了这一点 - 在我们遇到的情况下,有人问对于 zf2.2.* 和同时为学说-(orm-)模块 0.9.*@dev 因为学说模块目前需要 zf2.3

你使用 zf2.2.* 和学说模块 0.8.*@dev 所以它是一些其他的子依赖。

php composer.phar depends doctrine/doctrine-module

并检查版本。

为了确保背板/zendframework 在任何地方都不是直接的子依赖,问题在于版本不匹配和作曲家寻找替代方案 - 已填充issue

【讨论】:

  • 我更改了两者的所需版本,问题消失了,但其他依赖项的相同问题不满意。我回滚到以前的版本,似乎问题不再存在。我假设子依赖项已从它所在的位置删除
【解决方案3】:

通常你可以这样做;

composer depends backplane\zendframework

但似乎这是另一个依赖项的依赖项,Composer 不会显示哪个...唯一的解决方案是手动递归分析依赖项...?!

【讨论】:

  • 是的,我开始走这条路,但这是一个痛苦的过程。 :(
猜你喜欢
  • 2016-09-23
  • 2013-04-15
  • 1970-01-01
  • 1970-01-01
  • 2019-12-02
  • 2013-04-20
  • 2018-03-06
  • 1970-01-01
  • 2015-03-26
相关资源
最近更新 更多