无法将要求解析为一组可安装的程序包.yajra/laravel数据表oracle



我正在尝试使用以下命令安装yajra/laravel datatables oracle:

composer require yajra/laravel-datatables-oracle

但我得到了以下错误:

Your requirements could not be resolved to an installable set of packages.
Problem 1
- yajra/laravel-datatables[dev-master, v9.0.0] require yajra/laravel-datatables-oracle 10.* -> satisfiable by yajra/laravel-datatables-oracle[v10.0.0, ..., 10.x-dev (alias of dev-master)].
- yajra/laravel-datatables-oracle 10.x-dev is an alias of yajra/laravel-datatables-oracle dev-master and thus requires it to be installed too.
- yajra/laravel-datatables-oracle[dev-master, v10.0.0, ..., v10.1.2] require illuminate/database ^9 -> found illuminate/database[v9.0.0-beta.1, ..., 9.x-dev] but these were not loaded, likely because it conflicts with another require.
- yajra/laravel-datatables 9.0.x-dev is an alias of yajra/laravel-datatables dev-master and thus requires it to be installed too.
- Root composer.json requires yajra/laravel-datatables ^9.0 -> satisfiable by yajra/laravel-datatables[v9.0.0, 9.0.x-dev (alias of dev-master)].
Installation failed, reverting ./composer.json and ./composer.lock to their original content.

我的laravel框架版本是v8.83.22。

Bellow是我的composer.json文件,显示了我所有的依赖项和需求

{
"name": "laravel/laravel",
"type": "project",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"require": {
"php": "^7.3|^8.0",
"barryvdh/laravel-dompdf": "^1.0.0",
"fruitcake/laravel-cors": "^2.0",
"guzzlehttp/guzzle": "^7.0.1",
"intervention/image": "^2.6",
"jimmyjs/laravel-report-generator": "^2.1",
"laravel/framework": "^8.54",
"laravel/sanctum": "^2.11",
"laravel/tinker": "^2.5",
"laravel/ui": "^3.3",
"laraveldaily/laravel-invoices": "3.0",
"pragmarx/tracker": "^4.0",
"rap2hpoutre/fast-excel": "^4.0",
"simplesoftwareio/simple-qrcode": "^4.2"
},
"require-dev": {
"barryvdh/laravel-debugbar": "^3.6",
"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"
},
"autoload": {
"psr-4": {
"App\": "app/",
"Database\Factories\": "database/factories/",
"Database\Seeders\": "database/seeders/"
}
},
"autoload-dev": {
"psr-4": {
"Tests\": "tests/"
}
},
"scripts": {
"post-autoload-dump": [
"Illuminate\Foundation\ComposerScripts::postAutoloadDump",
"@php artisan package:discover --ansi"
],
"post-update-cmd": [
"@php artisan vendor:publish --tag=laravel-assets --ansi"
],
"post-root-package-install": [
"@php -r "file_exists('.env') || copy('.env.example', '.env');""
],
"post-create-project-cmd": [
"@php artisan key:generate --ansi"
]
},
"extra": {
"laravel": {
"dont-discover": []
}
},
"config": {
"optimize-autoloader": true,
"preferred-install": "dist",
"sort-packages": true
},
"minimum-stability": "dev",
"prefer-stable": true
}

注意,这些要求只是最低要求,比如我安装了版本8.0.8的php,laravel框架是v8.83.22

正如用户所提到的,您需要使用以前的版本(9(,因为最新的版本(10(只支持Laravel 9.x+,而您正在使用Laravel 8.x

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

我还看到你提到:

尝试过并得到以下错误:[InvalidArgumentException]版本9.0的包yajra/laravel datatables oracle的PHP要求与您的PHP版本、PHP扩展和Composer版本不兼容:-yajra/laravel datatables oraclev9.0.0需要PHP^7.1.3,它与您安装的版本8.0.8不匹配。

这意味着您使用的是PHP 8.0,但yajra/laravel-datatables-oracle:^9.0只支持7.1 <= PHP > 8.0,因此请使用以下内容:

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

那个版本的composer.json是这样的:

"require": {
"php": "^7.1.3|^8",
"illuminate/database": "5.8.*|^6|^7|^8|^9",
"illuminate/filesystem": "5.8.*|^6|^7|^8|^9",
"illuminate/http": "5.8.*|^6|^7|^8|^9",
"illuminate/support": "5.8.*|^6|^7|^8|^9",
"illuminate/view": "5.8.*|^6|^7|^8|^9"
},

这意味着它将允许您使用任何Laravel>=5.8.x,但也允许您使用PHP >= 7.1


Yajra 9.0版composer.json以前不支持,这就是它失败的原因:

"require": {
"php": "^7.1.3",
"illuminate/database": "5.8.*",
"illuminate/filesystem": "5.8.*",
"illuminate/http": "5.8.*",
"illuminate/support": "5.8.*",
"illuminate/view": "5.8.*"
},

你可以看到它只支持Laravel 5.8和7.1 <= PHP > 8.0

该特定包的最新版本是10.x,只有Laravel9.x及更高版本才支持它。

您使用的composer require将引入Laravel 8安装不支持的10.x版本,因此请向composer提供Laravel8.x支持的包的特定版本:

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

您可以在软件包GitHub页面上检查版本兼容性。

相关内容

最新更新