【问题标题】:Your requirements could not be resolved to an installable set of packages. - Symfony Project您的要求无法解决为一组可安装的软件包。 - Symfony 项目
【发布时间】:2020-02-04 18:37:13
【问题描述】:

我尝试从我必须维护的项目中安装依赖项,但每次我尝试执行 composer install 时都会收到此错误“您的要求无法解析为一组可安装的软件包。',它给了我这个错误:

    Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
    Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for symfony/symfony v3.4.23 -> satisfiable by symfony/symfony[v3.4.23].
    - don't install symfony/css-selector v4.2.4|don't install symfony/symfony v3.4.23
    - Installation request for symfony/css-selector v4.2.4 -> satisfiable by symfony/css-selector[v4.2.4].

我尝试过更改composer.json、作曲家更新--lock、作曲家安装、作曲家更新

在这里,我将 composer.json 与依赖项粘贴在一起。

"require": {
        "php": ">=7.1",
        "ext-json": "*",
        "doctrine/doctrine-bundle": "^1.6",
        "doctrine/doctrine-migrations-bundle": "^1.0",
        "doctrine/orm": "^2.5",
        "incenteev/composer-parameter-handler": "^2.0",
        "knplabs/knp-snappy-bundle": "^1.5",
        "sensio/distribution-bundle": "^5.0.19",
        "sensio/framework-extra-bundle": "^3.0.2",
        "symfony/monolog-bundle": "^3.1.0",
        "symfony/polyfill-apcu": "^1.0",
        "symfony/swiftmailer-bundle": "^2.3.10",
        "symfony/symfony": "3.4.*",
        "twig/twig": "^1.0||^2.0"
    },
    "require-dev": {
        "sensio/generator-bundle": "^3.0",
        "symfony/browser-kit": "^4.2",
        "symfony/css-selector": "^4.2",
        "symfony/phpunit-bridge": "^4.2"
    },

由于依赖项之一附带的 autoload.php,我无法启动应用程序。

我有最后一个 PHP 版本和最后一个 composer 版本。

非常感谢。

PS:尝试删除 composer.lock 并再次执行 composer install 和 composer update ,结果如下:

 Problem 1
    - Conclusion: don't install symfony/symfony v3.4.31
    - Conclusion: don't install symfony/symfony v3.4.30
    - Conclusion: don't install symfony/symfony v3.4.29
    - Conclusion: don't install symfony/symfony v3.4.28
    - Conclusion: don't install symfony/symfony v3.4.27
    - Conclusion: don't install symfony/symfony v3.4.26
    - Conclusion: don't install symfony/symfony v3.4.25
    - Conclusion: don't install symfony/symfony v3.4.24
    - Conclusion: don't install symfony/symfony v3.4.23
    - 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
    - don't install symfony/css-selector v4.2.0|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.1|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.10|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.11|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.2|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.3|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.4|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.5|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.6|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.7|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.8|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.2.9|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.3.0|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.3.1|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.3.2|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.3.3|don't install symfony/symfony v3.4.0
    - don't install symfony/css-selector v4.3.4|don't install symfony/symfony v3.4.0
    - 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.23, v3.4.24, v3.4.25, v3.4.26, v3.4.27, v3.4.28, v3.4.29, v3.4.3, v3.4.30, v3.4.31, v3.4.4, v3.4.5, v3.4.6, v3.4.7, v3.4.8, v3.4.9].
    - Installation request for symfony/css-selector ^4.2 -> satisfiable by symfony/css-selector[v4.2.0, v4.2.1, v4.2.10, v4.2.11, v4.2.2, v4.2.3, v4.2.4, v4.2.5, v4.2.6, v4.2.7, v4.2.8, v4.2.9, v4.3.0, v4.3.1, v4.3.2, v4.3.3, v4.3.4].

【问题讨论】:

  • 删除composer.lock文件,然后重试。
  • @aynber 不,不工作,它给了我很多“不要安装 symfony/symfony”
  • 尝试运行composer dump-autoload
  • @Joseph 也没有,同样的问题
  • amm try composer update 它应该可以工作

标签: php symfony dependencies composer-php


【解决方案1】:

我认为您的问题是由这两个要求的组合引起的:

"symfony/symfony": "3.4.*"
"symfony/css-selector": "^4.2"

Symfony/symfony 包的 replace 部分有 symfony/css-selector 和 self.version 这意味着当作曲家尝试安装 symfony/symfony 3.4.31 版时,它也算作 symfony/css-selector 3.4.31 版' 与您的 require-dev 中的版本 ^4.2 不匹配。

您可能还会遇到与symfony/browser-kit 相同的问题。

您应该修改您的要求以不包括同一软件包的多个版本。

【讨论】:

  • 我该怎么做?我是 Symfony 和包管理的新手。谢谢..
  • 我建议从 require-dev 中删除那些有问题的包。但我不能说到底会发生什么,因为我不知道为什么有人把它们放在首位。
  • 谢谢,我已经删除了它们,现在一切正常。我希望没有新的东西出现。 :)
【解决方案2】:

此错误表示您的 composer.json 文件中存在一些包不兼容问题。如果要强制,请运行composer install --ignore-platform-reqs

但我建议你检查一下依赖版本是否相互不兼容

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-27
    • 1970-01-01
    • 1970-01-01
    • 2016-12-24
    • 2016-03-22
    • 2018-10-22
    • 2019-06-28
    相关资源
    最近更新 更多