簡體   English   中英

Laravel Composer 無法安裝 tymon/jwt-auth

[英]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.*

根據這個 Github issue

composer require tymon/jwt-auth --ignore-platform-reqs

完美地為我工作

使用“--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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM