【问题标题】:Symfony 2.8 > 3.4.22 - Your requirements could not be resolved to an installable set of packagesSymfony 2.8 > 3.4.22 - 您的需求无法解析为一组可安装的软件包
【发布时间】:2019-07-15 07:43:34
【问题描述】:

我正在 Stack Overflow 上搜索此错误,但没有找到任何相关信息。

最近我将 Symfony 2.8 更新到 3.4.22,现在我必须用 composer 更新一些包,21 个包中有 3 个在我尝试升级时出现问题。

这些捆绑包是: - symfony/教条桥 -friendsofsymfony/用户捆绑包 -friendsofsymfony/oauth-server-bundle

当我尝试手动安装这些包时,composer 的输出是:

Using version ^4.2 for symfony/doctrine-bridge
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Conclusion: remove doctrine/doctrine-bundle 1.10.2
    - Conclusion: don't install doctrine/doctrine-bundle 1.10.2
    - Conclusion: remove symfony/symfony v3.4.22
    - Conclusion: don't install symfony/symfony v3.4.22
    - Conclusion: don't install symfony/symfony v3.4.21
    - Conclusion: don't install symfony/symfony v3.4.20
    - Conclusion: don't install symfony/symfony v3.4.19
    - Conclusion: don't install symfony/symfony v3.4.18
    - Conclusion: don't install symfony/symfony v3.4.17
    - Conclusion: don't install symfony/symfony v3.4.16
    - Conclusion: don't install symfony/symfony v3.4.15
    - Conclusion: don't install symfony/symfony v3.4.14
    - Conclusion: don't install symfony/symfony v3.4.13
    - Conclusion: don't install symfony/symfony v3.4.12
    - Conclusion: don't install symfony/symfony v3.4.11
    - Conclusion: don't install symfony/symfony v3.4.10
    - Conclusion: don't install symfony/symfony v3.4.9
    - Conclusion: don't install symfony/symfony v3.4.8
    - Conclusion: don't install symfony/symfony v3.4.7
    - Conclusion: don't install symfony/symfony v3.4.6
    - Conclusion: don't install symfony/symfony v3.4.5
    - Conclusion: don't install symfony/symfony v3.4.4
    - Conclusion: don't install symfony/symfony v3.4.3
    - Conclusion: don't install symfony/symfony v3.4.2
    - Conclusion: don't install symfony/symfony v3.4.1
    - Installation request for doctrine/doctrine-bundle (locked at 1.10.2, required as ^1.6) -> satisfiable by doctrine/doctrine-bundle[1.10.2].
    - Conclusion: don't install symfony/symfony v3.4.0
    - doctrine/doctrine-bundle 1.10.2 requires symfony/doctrine-bridge ~2.7|~3.0|~4.0 -> satisfiable by symfony/doctrine-bridge[v4.2.0, v4.2.1, v4.2.2, v4.2.3].
    - don't install symfony/doctrine-bridge v4.2.0|don't install symfony/symfony v3.4.22
    - don't install symfony/doctrine-bridge v4.2.1|don't install symfony/symfony v3.4.22
    - don't install symfony/doctrine-bridge v4.2.2|don't install symfony/symfony v3.4.22
    - don't install symfony/doctrine-bridge v4.2.3|don't install symfony/symfony v3.4.22
    - Installation request for symfony/symfony 3.4.* -> satisfiable by symfony/symfony[v3.4.0, v3.4.1, v3.4.10, v3.4.11, v3.4.12, v3.4.13, v3.4.14, v3.4.15, v3.4.16, v3.4.17, v3.4.18, v3.4.19, v3.4.2, v3.4.20, v3.4.21, v3.4.22, v3.4.3, v3.4.4, v3.4.5, v3.4.6, v3.4.7, v3.4.8, v3.4.9].


Installation failed, reverting ./composer.json to its original content.

而friendsofsymfony/oauth-server-bundle 和friendsofsymfony/user-bundle 是同样的错误:

Using version ^1.6 for friendsofsymfony/oauth-server-bundle
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - friendsofsymfony/oauth-server-bundle 1.6.2 requires paragonie/random_compat ^1|^2 -> satisfiable by paragonie/random_compat[1.0.10, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6, v1.0.0, v1.0.1, v1.2.0, v1.2.1, v1.2.2, v1.2.3, v1.3.0, v1.3.1, v1.4.0, v1.4.1, v1.4.2, v1.4.3, v1.x-dev, v2.0.0, v2.0.1, v2.0.10, v2.0.11, v2.0.12, v2.0.13, v2.0.14, v2.0.15, v2.0.16, v2.0.17, v2.0.18, v2.0.2, v2.0.3, v2.0.4, v2.0.5, v2.0.6, v2.0.7, v2.0.8, v2.0.9] but these conflict with your requirements or minimum-stability.
    - friendsofsymfony/oauth-server-bundle 1.6.1 requires paragonie/random_compat ^1|^2 -> satisfiable by paragonie/random_compat[1.0.10, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6, v1.0.0, v1.0.1, v1.2.0, v1.2.1, v1.2.2, v1.2.3, v1.3.0, v1.3.1, v1.4.0, v1.4.1, v1.4.2, v1.4.3, v1.x-dev, v2.0.0, v2.0.1, v2.0.10, v2.0.11, v2.0.12, v2.0.13, v2.0.14, v2.0.15, v2.0.16, v2.0.17, v2.0.18, v2.0.2, v2.0.3, v2.0.4, v2.0.5, v2.0.6, v2.0.7, v2.0.8, v2.0.9] but these conflict with your requirements or minimum-stability.
    - friendsofsymfony/oauth-server-bundle 1.6.0 requires paragonie/random_compat ^1|^2 -> satisfiable by paragonie/random_compat[1.0.10, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6, v1.0.0, v1.0.1, v1.2.0, v1.2.1, v1.2.2, v1.2.3, v1.3.0, v1.3.1, v1.4.0, v1.4.1, v1.4.2, v1.4.3, v1.x-dev, v2.0.0, v2.0.1, v2.0.10, v2.0.11, v2.0.12, v2.0.13, v2.0.14, v2.0.15, v2.0.16, v2.0.17, v2.0.18, v2.0.2, v2.0.3, v2.0.4, v2.0.5, v2.0.6, v2.0.7, v2.0.8, v2.0.9] but these conflict with your requirements or minimum-stability.
    - Installation request for friendsofsymfony/oauth-server-bundle ^1.6 -> satisfiable by friendsofsymfony/oauth-server-bundle[1.6.0, 1.6.1, 1.6.2].


Installation failed, reverting ./composer.json to its original content.

如何解决这些依赖关系?

欢迎任何帮助

  • 编辑 1:我正在尝试进行全新的捆绑包安装,而不是更新 旧包
  • 编辑 2:PHP 版本 => 7.1.26

【问题讨论】:

  • 存在这么多问题的原因是没有单一的灵丹妙药。这一切都取决于。就个人而言,我会创建一个新的项目 3.4 项目,然后需要每个附加的第三方捆绑包。希望他们都有一个支持 3.4 的版本。这至少给了我一个起点。理论上,您可以将现有的 composer.json 文件替换为新文件,删除供应商目录,安装并交叉手指。
  • @Cerad 这正是我正在做的事情
  • @Fabian 我目前更新到 Symfony 3.4,问题有所不同,因为我正在尝试进行全新的捆绑安装
  • php 版本?确保您的 php 控制台版本至少为 5.6。假设您从“composer create-project symfony/framework-standard-edition”开始。然后会自动安装学说桥,因此您无需更新它。我刚刚创建了一个新的 3.4 并安装了 fos 包没有问题。我碰巧使用的是 php 7.3。

标签: symfony doctrine composer-php fosuserbundle fosoauthserverbundle


【解决方案1】:

解决办法如下:

在 composer.json 中,更改:

"paragonie/random_compat": "^2.1",

通过这个(如果你没有,添加它):

"paragonie/random_compat": ">=1",

并在同一文档中删除这一行:

"symfony/doctrine-bridge" : "~2.1",

然后,更新作曲家,对我来说,它就像一个魅力!

参考文献:

谢谢大家

【讨论】:

    猜你喜欢
    • 2015-08-22
    • 1970-01-01
    • 2016-09-29
    • 2015-06-20
    • 1970-01-01
    • 2018-04-18
    • 2021-10-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多