在 Symfony 5 中使用 composer 安装 EasyAdmin 的问题

Issue to install EasyAdmin with composer in Symfony 5

我在 Symfony 5 中开始了一个新项目,我尝试使用 composer require easycorp/easyadmin-bundle 安装 EasyAdmin,但我发现了一个问题。

作曲家日志:

./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Restricting packages listed in "symfony/symfony" to "5.1.*"
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Conclusion: don't install easycorp/easyadmin-bundle v3.1.3
    - Conclusion: don't install easycorp/easyadmin-bundle v3.1.2
    - Conclusion: don't install easycorp/easyadmin-bundle v3.1.1
    - Conclusion: don't install easycorp/easyadmin-bundle v3.1.0
    - Conclusion: don't install easycorp/easyadmin-bundle v3.0.2
    - Conclusion: don't install easycorp/easyadmin-bundle v3.0.1
    - Conclusion: remove doctrine/common 3.0.2
    - Installation request for easycorp/easyadmin-bundle ^3.0 -> satisfiable by easycorp/easyadmin-bundle[v3.0.0, v3.0.1, v3.0.2, v3.1.0, v3.1.1, v3.1.2, v3.1.3].
    - Conclusion: don't install doctrine/common 3.0.2
    - easycorp/easyadmin-bundle v3.0.0 requires doctrine/common ^2.8 -> satisfiable by doctrine/common[2.12.0, 2.13.0, 2.13.1, 2.13.2, 2.13.3, v2.10.0, v2.11.0, v2.8.0, v2.8.1, v2.9.0].
    - Can only install one of: doctrine/common[2.12.0, 3.0.2].
    - Can only install one of: doctrine/common[2.13.0, 3.0.2].
    - Can only install one of: doctrine/common[2.13.1, 3.0.2].
    - Can only install one of: doctrine/common[2.13.2, 3.0.2].
    - Can only install one of: doctrine/common[2.13.3, 3.0.2].
    - Can only install one of: doctrine/common[v2.11.0, 3.0.2].
    - Can only install one of: doctrine/common[v2.10.0, 3.0.2].
    - Can only install one of: doctrine/common[v2.8.0, 3.0.2].
    - Can only install one of: doctrine/common[v2.8.1, 3.0.2].
    - Can only install one of: doctrine/common[v2.9.0, 3.0.2].
    - Installation request for doctrine/common (locked at 3.0.2) -> satisfiable by doctrine/common[3.0.2].

你有解决办法吗?

如您在错误消息列表中所见:easycorp/easyadmin-bundle 在 v2 中需要 doctrine/common,而您已经安装了 v3。

您应该将该软件包降级,以便可以安装管理包。如果您需要这方面的帮助,请将 composer.json 的内容添加到您的问题中。

Easyadmin 依赖于 doctrine/common v2 您需要使用 composer remove doctrine/common 删除当前的学说版本然后您可以安装 easyadmin

尝试像这样更改您的 composer.json 文件:

    "type": "project",
    "license": "proprietary",
    "require": {
        "php": ">=7.2.5",
        "ext-ctype": "*",
        "ext-iconv": "*",
        "composer/package-versions-deprecated": "^1.11",
        "doctrine/annotations": "^1.10",
        "doctrine/doctrine-bundle": "^2.1",
        "doctrine/doctrine-migrations-bundle": "^3.0",
        "doctrine/orm": "^2.6.3",
    "easycorp/easyadmin-bundle": "3.1",
        "sensio/framework-extra-bundle": "^5.6",
        "symfony/asset": "5.1.*",
        "symfony/console": "5.1.*",
        "symfony/dotenv": "5.1.*",
        "symfony/flex": "^1.3.1",
        "symfony/form": "5.1.*",
        "symfony/framework-bundle": "5.1.*",
        "symfony/maker-bundle": "^1.20",
        "symfony/security-bundle": "5.1.*",
        "symfony/stopwatch": "5.1.*",
        "symfony/twig-bundle": "5.1.*",
        "symfony/validator": "5.1.*",
        "symfony/web-profiler-bundle": "5.1.*",
        "symfony/yaml": "5.1.*",
        "twig/extra-bundle": "^2.12|^3.0",
        "twig/twig": "^2.12|^3.0"
    },


然后键入:sudo composer update。适用于 Ubuntu 18.04 LTS :)

您需要降级 doctrine/common 和 doctrine/persistence。

试试这个:

composer require doctrine/persistence:1.3.8 doctrine/common:2.13.3

那么你应该可以调用:

symfony composer req "admin:^2.0"