Не могу понять, почему я не могу установить laravel-datatables

Я поддерживаю старый проект, начав с laravel 5.4, а теперь поднял до laravel 8.

Все работает.

Теперь мне нужно установить laravel-datatables.

Глядя на документ, я отказался от v10, потому что он требует Laravel 9+ По той же причине я тоже откинул v9 Итак, я пытаюсь установить laravel-datatables v8

composer require yajra/laravel-datatables-oracle:^8.0

я получил это

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Root composer.json requires yajra/laravel-datatables-oracle 8.0 -> satisfiable by yajra/laravel-datatables-oracle[v8.0.0].
    - yajra/laravel-datatables-oracle v8.0.0 requires illuminate/database 5.4.*|5.5.* -> found illuminate/database[v5.4.0, ..., 5.5.x-dev] but these were not loaded, likely because it conflicts with another require.

Installation failed, reverting ./composer.json and ./composer.lock to their original content.

Я не могу понять, какой пакет/require конфликтует с этим пакетом.

Это мой package.json

"require": {
    "php": "^7.3|^8.0",
    "ext-json": "*",
    "barryvdh/laravel-dompdf": "^0.8.1",
    "buzz/laravel-google-captcha": "^2.1",
    "carlos-meneses/laravel-mpdf": "^2.1",
    "davidepastore/codice-fiscale": "^0.7.1",
    "doctrine/dbal": "^3.0",
    "fideloper/proxy": "^4.4",
    "fruitcake/laravel-cors": "^2.0",
    "guzzlehttp/guzzle": "^7.3",
    "laravel/framework": "^8.12",
    "laravel/tinker": "^2.5",
    "laravel/ui": "^3.2",
    "league/flysystem-sftp": "~1.0",
    "maatwebsite/excel": "^3.1",
    "nowakowskir/php-jwt": "^2.0",
    "oriceon/toastr-5-laravel": "^1.0.0",
    "pragmarx/google2fa-laravel": "^1.4",
    "pragmarx/recovery": "^0.2.0",
    "ramsey/uuid": "^4.1",
    "sentry/sdk": "^3.1",
    "sentry/sentry-laravel": "^2.4",
    "shalvah/laravel-jsend": "^2.3",
    "snowfire/beautymail": "^1.1"
},
"require-dev": {
    "facade/ignition": "^2.5",
    "fakerphp/faker": "^1.9.1",
    "laravel/sail": "^1.0.1",
    "mockery/mockery": "^1.4.2",
    "nunomaduro/collision": "^5.0",
    "phpunit/phpunit": "^9.3.3"
},

Та же проблема с v7

Обратите внимание: мы не можем для внутренней политики использовать ветки -dev

Пытаюсь установить v9...

  Problem 1
    - Root composer.json requires yajra/laravel-datatables-oracle 9 -> satisfiable by yajra/laravel-datatables-oracle[v9.0.0].
    - yajra/laravel-datatables-oracle v9.0.0 requires illuminate/database 5.8.* -> found illuminate/database[v5.8.0, ..., 5.8.x-dev] but these were not loaded, likely because it conflicts with another require.
composer require yajra/laravel-datatables-oracle:7.0-dev
Abdulla Nilam 19.12.2022 09:15

@AbdullaNilam: почему это должно решить? в любом случае это не решает проблему, а также мы не можем использовать ветки -dev в наших проектах из-за требований внутренней стабильности.

realtebo 19.12.2022 09:19

@AbdullaNilam, как вы можете видеть на Packagist, v7 этого пакета совместим только с Laravel v5.

Nico Haase 19.12.2022 09:26
Стоит ли изучать 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
3
88
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

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

Как написано в сообщении об ошибке: yajra/laravel-datatables-oracle в v8 совместим только с Laravel v5, а вы используете Laravel v8.

Попробуйте использовать composer require yajra/laravel-datatables-oracle:^9.0 — эта версия совместима с Laravel от v5 до v8. В следующий раз, когда вы столкнетесь с такой проблемой, взгляните на ограничения разных версий пакета. У Packagist есть неплохой обзор совместимых версий, например, на https://packagist.org/packages/yajra/laravel-datatables-oracle#v9.21.2, где вы можете увидеть зависимости для последней версии v9 этот пакет данных

ваш ответ предложил мне попробовать каждую версию, и я наконец обнаружил, что использование ^9.* успешно устанавливает версию 9.21. Так что спасибо тебе !

realtebo 19.12.2022 10:03

"Это неправда" - что это значит?

Nico Haase 19.12.2022 10:04

извините, моя вина

realtebo 19.12.2022 10:04

Я принял ответ от Нико Хаасе, потому что он помог мне найти решение, но это точное решение для моего конкретного случая.

composer require yajra/laravel-datatables-oracle:^9.*

Он установил версию 9.21.x, и она совместима с моим фактическим набором пакетов.

Есть ли веская причина использовать два модификатора выбора? Что-то не работает с ^9.0, что работает лучше с ^9.*?

Nico Haase 19.12.2022 10:06

У меня нет объяснения, но ^9.0 не пытается установить так же, как ^9.*

realtebo 19.12.2022 10:38

Какую версию он установит вместо этого?

Nico Haase 19.12.2022 11:08

С 9.0 он ничего не устанавливает, потому что он говорит, что нет подходящей версии из-за других конфликтов. с 9.* вместо этого он работает. у меня нет объяснений

realtebo 20.12.2022 12:48

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