Laravel не может добавить новый пакет

Я не могу добавить новый пакет в проект laravel. Я использую ларавель 7.2 Я пытался запустить эту команду

composer require stripe/stripe-php

но я получил ошибку ниже.

    Problem 1
        - Root composer.json requires kreait/laravel-firebase ^3.0, 
found kreait/laravel-firebase[3.0.0] 
but the package is fixed to 2.2.0 (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.

Use the option --with-all-dependencies (-W) to allow upgrades,
downgrades and removals for packages currently locked to specific versions.

Я также пробовал обновить композитор, но все еще получаю эту ошибку.

Попробуйте сначала запустить composer update, а затем установить пакет.

Rian Zaman 23.12.2020 10:03

Я уже писал, что «я также пробовал обновить композитор, но все равно получаю эту ошибку».

Bilal Rabbi 23.12.2020 10:48

Пожалуйста, поделитесь более подробной информацией, например, текущим состоянием вашего composer.json

Nico Haase 27.12.2020 19:13

Я принял ответ, который решил проблему

Bilal Rabbi 28.12.2020 06:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
4
16 855
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Насколько я вижу, ваш файл composer.json имеет устаревшую версию пакета kreait/laravel-firebase. stripe/stripe-php требуется kreait/laravel-firebase версия > 3.0, а ваша версия 3.0.0. Измените версию kreait/laravel-firebase в своем composer.json, затем удалите composer.lock файл, а затем снова composer install. Таким образом, все ваши пакеты будут обновлены до новой указанной версии. Без удаления файла composer.lock композитор будет устанавливать только кешированные версии ваших пакетов, даже если вы измените версии.

Я просто удалил composer.lock, а затем установил версию пакета с помощью: composer require package/sth "version" --ignore-platform-reqs

Hashmat Waziri 03.02.2021 03:43

--ignore-platform-reqs работал у меня, когда у меня была проблема с пакетом, указывающим версию PHP.

tschumann 08.03.2022 03:29

Просто удалите composer.json и composer install все будет исправлено.

Вы, вероятно, имели в виду: просто удалите composer.lock (то есть файл блокировки, а не файл json), так как это сработает.

Alexander Taubenkorb 15.07.2022 05:52

Вы должны изменить файл composer.json в соответствии с версией пакета с ошибкой. В вашем случае измените kreait/laravel-firebase ^3.0 на kreait/laravel-firebase ^3.0.0, затем удалите composer.lock файл и выполните команду composer install. Надеюсь, это решит вашу проблему.

Вы говорите изменить версию, но то, что вы говорите изменить, совпадает с оригиналом.

cs1349459 04.10.2022 17:21

@ cs1349459 ах, как плохо. Исправлено сейчас

Faisal Mirza 05.10.2022 03:19

Другие вопросы по теме