Я пытаюсь обновить рюкзак laravel до версии 3.4.0, руководствуясь этим документом.
в настоящее время эта версия laravel 5.7.x (да, это действительно устаревший проект).
на 9-м шаге написано запустить php artisan backpack:base:install
, при запуске этой команды возникнет эта ошибка:
The command "composer require laracasts/generators:dev-master --dev" failed.
Exit Code: 2(Misuse of shell builtins)
Working directory: /home/user/php/laravel/
Output:
================
Error Output:
================
./composer.json has been updated
Running composer update laracasts/generators
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Root composer.json requires laracasts/generators dev-master -> satisfiable by l
aracasts/generators[dev-master].
- laracasts/generators dev-master requires illuminate/support ~6.0|~7.0|~8.0|~9.0
|^10.0 -> found illuminate/support[v6.0.0, ..., v6.20.44, v7.0.0, ..., v7.30.6, v8.0.
0, ..., v8.83.27, v9.0.0, ..., v9.52.7, v10.0.0, ..., v10.9.0] but these were not loa
ded, likely because it conflicts with another require.
Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removal
s for packages currently locked to specific versions.
Installation failed, reverting ./composer.json and ./composer.lock to their original
content.
Таким образом, laracasts/генераторы зависят от освещения/поддержки v6.0.0 - v10.9.0, которая не загружена.
как мне разрешить этот конфликт?
как говорит ошибка: я попытался запустить эту команду с опцией -W
, которая: composer require laracasts/generators:dev-master --dev -W
, и произошла та же ошибка:
- Root composer.json requires laracasts/generators dev-master -> satisfiable by laracasts/generators[dev-master].
- laracasts/generators dev-master requires illuminate/support ~6.0|~7.0|~8.0|~9.0|^10.0 -> found illuminate/support[v6.0.0, ..., v6.20.44, v7.0.0, ..., v7.30.6, v8.0.0, ..., v8.83.27, v9.0.0, ..., v9.52.7, v10.0.0, ..., v10.9.0] but these were not loaded, likely because it conflicts with another require.
`
Ваша проблема;
laracasts/generators:dev-master
требуется Laravel v6 или выше.Чтобы иметь Backpack v3.4 И генераторы, вы должны установить версию ^1.2 (1.2.0 — последняя v1, вы можете проверить на упаковке).
Следующая команда должна решить вашу проблему;
composer require laracasts/generators:^1.2
Поскольку эта команда установки рюкзака в этот момент не работает, вам нужно будет выполнить остальные команды самостоятельно.
Поэтому, пожалуйста, убедитесь, что после предыдущей команды вы запускаете другие в команде установки :
php artisan vendor:publish --provider = "Backpack\Base\BaseServiceProvider" --tag=minimum
php artisan vendor:publish --provider = "Prologue\Alerts\AlertsServiceProvider"
php artisan migrate
php artisan backpack:base:publish-user-model
php artisan backpack:base:publish-middleware
Быстрая заметка; много раз при обновлении многих основных версий проекта композитора я был вынужден удалить папку vendor
и composer.lock
, чтобы все было установлено без проблем с зависимостями.
да, лучше удалить старые пакеты и выяснить, какая версия может быть совместима с нашим проектом. на мой взгляд, мы должны удалить пакет с помощью CLI
composer remove
, чтобы мы могли видеть, какие пакеты необходимы для решения этих конфликтов.