【问题标题】:Cannot upgrade Laravel from 6 to 7 composer hangs无法将 Laravel 从 6 升级到 7 作曲家挂起
【发布时间】:2021-05-05 15:19:18
【问题描述】:

我正在尝试将 Laravel 从 v6 升级到 v7。我按照文档中的指南进行操作,但是当我运行 composer update 时没有任何反应。我已经尝试等待几个小时,但仍然一无所获。使用composer update -vvv 在调试模式下运行作曲家会产生以下结果:

Looking at all rules.
Something's changed, looking at all rules again (pass #521)

这是我的 composer.json 文件:

"require": {
        "php": "^7.4",
        "doctrine/dbal": "^2.9",
        "fico7489/laravel-pivot": "^3.0",
        "fideloper/proxy": "^4.4",
        "google/protobuf": "v3.6.1",
        "grpc/grpc": "^1.15",
        "intervention/image": "^2.4",
        "laravel/framework": "^7.0",
        "laravel/tinker": "^2.5",
        "maatwebsite/excel": "^3.1",
        "owen-it/laravel-auditing": "^10.0",
        "phpmentors/workflower": "1.3.*",
        "pragmarx/firewall": "^2.2",
        "predis/predis": "^1.1",
        "staudenmeir/eloquent-json-relations": "^1.1",
        "superbalist/laravel-google-cloud-storage": "^2.1",
        "guzzlehttp/guzzle": "^7.0.1",
        "ext-json": "*",
        "ext-bcmath": "*"
    },
    "require-dev": {
        "barryvdh/laravel-debugbar": "^3.1",
        "filp/whoops": "^2.0",
        "fzaninotto/faker": "^1.9.1",
        "facade/ignition": "^2.0",
        "mockery/mockery": "^1.3",
        "nunomaduro/collision": "^4.3",
        "nunomaduro/larastan": "^0.6",
        "phake/phake": "@stable",
        "phpunit/phpunit": "^8.5.8|^9.3.3",
        "symfony/process": "^4.5",
        "symplify/easy-coding-standard": "^4.7",
        "mnabialek/laravel-sql-logger":"2.2.8"
    },

我相信 laravel 7 所需的所有依赖项都已满足,但我无法解决作曲家更新问题。它没有提供其他信息,此时我迷路了。我猜某些软件包的更新有问题,但话又说回来,没有任何问题。如果我将 symmfony/process 的版本升级到 4.1,它会开始抛出全面的错误,我可以修复。 我希望有人知道我该如何解决这个问题,或者至少为我指明正确的方向。 注意。这是使用作曲家 1.10。作曲家 2 也是一样。

【问题讨论】:

    标签: laravel composer-php laravel-7 laravel-6


    【解决方案1】:

    您的依赖项不能一起工作:Laravel v7 需要在 v5 中使用 Symfony,因此无法解析将 "symfony/process": "^4.5" 放在包列表中(尤其是没有匹配该约束的 Symfony 版本)。删除此约束,因为 laravel/framework 已经需要 symfony/process - 再次需要它不会获得任何好处。

    接下来:phpmentors/workflower 还不兼容 Symfony v5,这也可能导致问题。

    【讨论】:

    • 谢谢,在添加和删除软件包数小时后,我确实发现了您指出的相同问题。 workflower 实际上有一个可以与 symfony 5 配合使用的开发版本,所以我想我现在会使用它。
    猜你喜欢
    • 2019-03-08
    • 2020-02-01
    • 2020-06-16
    • 2021-01-02
    • 2020-12-05
    • 2021-12-01
    • 1970-01-01
    • 2020-12-05
    • 2020-07-15
    相关资源
    最近更新 更多