league/flysystem-aws-s3-v3 on Laravel 8 其他包需要较低版本

问题描述 投票:0回答:6

跑步时

composer require league/flysystem-aws-s3-v3
我得到:

league/flysystem-aws-s3-v3[2.0.0, ..., 2.x-dev] require league/flysystem ^2.0.0 -> found league/flysystem[2.0.0-alpha.1, ..., 2.x-dev] but the package is fixed to 1.1.3 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.

在我的

composer.json
中没有提到
league/flysystem
,但它确实在我的
composer.lock
中出现为
"league/flysystem": "^1.1",
。看起来我有几个包(如
spatie/laravel-backup
)将其作为依赖项。

我该如何进行?我不确定如何更新其他包作为依赖项的包,并且这些其他包也已固定为特定版本。

laravel composer-php
6个回答
89
投票

正如您已经发现的那样:

spatie/laravel-backup
尚不兼容
league/flysystem
v2(这是非常新的,它已于昨天发布!)。

只需通过

composer require league/flysystem-aws-s3-v3:"^1.0"
需要该AWS包的“旧”版本。

毕竟这不是Laravel本身的问题


29
投票

我正在使用最新版本的 laravel V8.4.0(2021 年 7 月)

我通过以下方式解决这个问题:

  1. 删除项目根文件夹中的
    composer.lock
  2. 跑步
    composer require league/flysystem-aws-s3-v3:"~1.0"

16
投票

供 Laravel 8 使用

composer require --with-all-dependencies league/flysystem-aws-s3-v3 "^1.0"

4
投票

这是 Laravel 的问题。 Laravel v8 还不支持

league/flysystem
v2。 v9 将附带对它的支持:https://github.com/laravel/framework/pull/33612


3
投票

对于那些使用 Laravel 9 的用户,您需要升级到 v3.0。

作曲家要求 -W league/flysystem-aws-s3-v3 "^3.0"

删除compose.lock后


0
投票

对于laravel 9

  1. 删除项目根文件夹中的
    composer.lock
  2. 跑步
    composer require league/flysystem-aws-s3-v3 
© www.soinside.com 2019 - 2024. All rights reserved.