当运行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
)将此作为依赖项。
我该如何继续?我不知道如何更新一个其他软件包作为依赖的软件包,并且这些其他软件包也固定到一个特定的版本。
6条答案
按热度按时间sy5wg1nm1#
正如你已经发现的:
spatie/laravel-backup
还不兼容league/flysystem
v2(这是相当新的,它已经发布了...昨天!)。只需通过
composer require league/flysystem-aws-s3-v3:"^1.0"
获取该AWS软件包的“旧”版本即可。毕竟,这不是Laravel本身的问题。
kninwzqo2#
我正在使用最新版本的laravel V8.4.0(2021年7月)
我通过以下方式解决此问题:
1.删除项目根文件夹中的
composer.lock
1.运行
composer require league/flysystem-aws-s3-v3:"~1.0"
hrysbysz3#
对于Laravel 8使用
6za6bjd04#
这是Laravel的问题。Laravel v8不支持
league/flysystem
v2。v9将附带对它的支持:https://github.com/laravel/framework/pull/336126uxekuva5#
对于Laravel 9,您需要升级到v3.0。
composer require -W league/flysystem-aws-s3-v3“^3.0”
删除compose.lock后
z18hc3ub6#
对于laravel 9:
1.删除项目根文件夹中的
composer.lock
1.运行
composer require league/flysystem-aws-s3-v3