[英]Laravel Composer could not install tymon/jwt-auth
請協助,作曲家無法安裝 tymon/jwt-auth:0.5.*
我有類型:
composer require tymon/jwt-auth:0.5.*
我還嘗試在項目composer.json中添加ff:
require {
....
"tymon/jwt-auth": "dev-master",
....
}
和 "tymon/jwt-auth": "0.5.*" 分別
請注意:我是 laravel 的新手...
在 laravel 9.11 的情況下:
鍵入此命令:
composer require tymon/jwt-auth
OutPut 出現錯誤:
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Root composer.json requires tymon/jwt-auth ^0.5.12 -> satisfiable by tymon/jwt-auth[0.5.12].
- tymon/jwt-auth 0.5.12 requires illuminate/support ~5.0 -> found illuminate/support[v5.0.0, ..., 5.8.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.
這個命令在 Laravel 8 到 Laravel 9.11 中對我有用:
composer require -w tymon/jwt-auth --ignore-platform-reqs
作曲家.json
{
"name": "laravel/laravel",
"type": "project",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"require": {
"php": "^8.0.2",
"guzzlehttp/guzzle": "^7.2",
"laravel/framework": "^9.11",
"laravel/sanctum": "^2.14.1",
"laravel/tinker": "^2.7",
"tymon/jwt-auth": "^1.0"
},
"require-dev": {
"fakerphp/faker": "^1.9.1",
"laravel/sail": "^1.0.1",
"mockery/mockery": "^1.4.4",
"nunomaduro/collision": "^6.1",
"phpunit/phpunit": "^9.5.10",
"spatie/laravel-ignition": "^1.0"
},
"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 --force"
],
"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
}
我找到了一個(臨時)解決方案。
要獲得 Laravel 5.8 兼容性,請執行:
composer require tymon/jwt-auth ^1.0.0-rc.4.1
請參閱此 Github 問題中的討論。
要安裝此軟件包,您需要:
Laravel 4 or 5 (see compatibility table) PHP 5.4 +
通過 composer 安裝 - 編輯您的 composer.json 以要求該軟件包。
"require": { "tymon/jwt-auth": "0.5.*" }
然后在終端中運行
composer update
以將其拉入。
安裝在那里https://github.com/tymondesigns/jwt-auth/wiki/Installation沒有關於dev-master
的說法,嘗試使用0.5.*
使用“--ignore-platform-reqs”
composer require tymon/jwt-auth --ignore-platform-reqs
您可以通過簡單的方式獲得 0.5 版本: composer require tymon/jwt-auth
要從 0.5 開始指定,您可以使用composer require tymon/jwt-auth:^0.5
要在 PHP laravel 中安裝 tymon/jwt-auth 包,應遵循以下步驟:
Composer.json 要求應該是這樣的:
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.1.*",
"tymon/jwt-auth": "0.5.*"
},
然后在 config/app.php 中將以下內容放入 providers 數組中:
Tymon\JWTAuth\Providers\JWTAuthServiceProvider::class
然后在 config/app.php 的 aliases 數組中添加以下內容
'JWTAuth' => Tymon\JWTAuthFacades\JWTAuth::class,
'JWTFactory' => Tymon\JWTAuthFacades\JWTFactory::class
然后鍵入以下命令:
php artisan vendor:publish
注意:各種教程會建議您使用以下 php artisan vendor:publish --provider="Tymon\JWTAuthProviders\JWTAuthServiceProvider" 但在此之前嘗試上述命令,即不帶 --provider 它將起作用
然后輸入:
php artisan jwt:generate
完成此步驟后,您可以驗證 app/config/jwt.php 中生成的密鑰,如下所述:
'secret' => env('JWT_SECRET', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'),
Laravel 8:
composer require tymon/jwt-auth:^1.0.2
composer require tymon/jwt-auth --ignore-platform-reqs
npm install --save jwt-simple
完美地為我工作。
根據我的想法,最好使用以下命令。 作曲家需要 tymon/jwt-auth --ignore-platform-reqs
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.