【问题标题】:Composer could not install tymon/jwt-authComposer 无法安装 tymon/jwt-auth
【发布时间】:2018-03-31 07:33:59
【问题描述】:

请帮忙,composer 无法安装 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 的新手...

【问题讨论】:

  • 任何错误信息?
  • 我得到 :C:\xampp\my_xamp\htdocs\shops\laravel55>composer update 使用包信息加载 composer 存储库 更新依赖项(包括 require-dev) 您的需求无法解析为可安装集包。问题 1 - 在任何版本中都找不到请求的包 tymon/jwt-auth,包名可能有拼写错误。潜在原因: - 包名称中的拼写错误 - 根据您的最低稳定性设置,该包在足够稳定的版本中不可用
  • 与 PHP 7.3.1 和 Laravel 5.8.26 的 OP 存在相同的问题。

标签: php json composer-php laravel-5.5


【解决方案1】:

您可以通过简单的方式获得 0.5 版本:composer require tymon/jwt-auth

要从 0.5 开始指定,您可以使用 composer require tymon/jwt-auth:^0.5

【讨论】:

  • 不走运:我得到:[InvalidArgumentException] 找不到任何版本的包 tymon/jwt-auth 以获得最低稳定性(稳定)。当我检查包拼写或你的最低稳定性时:composer require tymon/jwt-auth 并且当我指定时我得到同样的错误。
  • 你的 composer.json 中有“最低稳定性”吗?
  • 实际上,我无法通过任何稳定性设置重现您的问题。
  • 不,我没有最低稳定性。 ..什么/你建议我在哪里添加?
  • 是什么让您无法重现我的问题?
【解决方案2】:

要安装此软件包,您需要:

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.*

【讨论】:

  • 我正在使用“php”:">=7.0.0",(仅供参考:laravel 5.5.13 和 composer 1.5.2),它是否仍然适用于 php 7...?跨度>
  • 是的,你去
  • 是的,什么 Thielicious?我必须做什么 ?因为我有 php 7 。我必须降级到 php 5.6 吗?是你说的吗?
  • @Neo Sono 打扰一下?我不是制作这个 API 的人。如果它显示5.4 +,则无需降级,因此请按照安装进行操作,因为根据您的兼容性,这应该可以正常工作。转到问题下的存储库,我看到有人遇到各种问题
【解决方案3】:

要在 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'),

【讨论】:

  • 谢谢。但是我已经继续使用 Java Spring MVC 4/5 和 HIBERNATE 了……而且它很有趣……再见 PHP。 ..
【解决方案4】:

我找到了一个(临时)解决方案。
要获得 Laravel 5.8 的兼容性,请执行:

composer require tymon/jwt-auth ^1.0.0-rc.4.1

请参阅this Github issue 中的讨论。

【讨论】:

  • 顺便说一句,能够使用构建在 Laravel Bcryt 密码然后......直接从货架上......我想 Bcryt 是目前市场上的顶级...... :)
  • 不是临时的)
【解决方案5】:

Laravel 8:

composer require tymon/jwt-auth:^1.0.2

【讨论】:

    【解决方案6】:

    这个命令在 Laravel 8 中对我有用:

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

    composer.json

    {
    "name": "laravel/laravel",
    "type": "project",
    "description": "The Laravel Framework.",
    "keywords": [
        "framework",
        "laravel"
    ],
    "license": "MIT",
    "require": {
        "php": "^7.3|^8.0",
        "fideloper/proxy": "^4.4.1",
        "fruitcake/laravel-cors": "^2.0.3",
        "guzzlehttp/guzzle": "^7.0.1",
        "laravel/framework": "^8.0",
        "laravel/passport": "^10.0",
        "laravel/tinker": "^2.5|dev-develop",
        "paragonie/random_compat": "2.*"
        
    },
    "require-dev": {
        "fakerphp/faker": "^1.9.1",
        "mockery/mockery": "^1.4.2",
        "nunomaduro/collision": "^5.0",
        "phpunit/phpunit": "^9.3.3"
    },
    "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist",
        "sort-packages": true
    },
    "extra": {
        "laravel": {
            "dont-discover": []
        }
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/",
            "Database\\Factories\\": "database/factories/",
            "Database\\Seeders\\": "database/seeders/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "minimum-stability": "dev",
    "prefer-stable": true,
    "scripts": {
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover --ansi"
        ],
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate --ansi"
        ]
    }
    }
    

    【讨论】:

      【解决方案7】:

      根据this Github issue

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

      完美地为我工作

      【讨论】:

        【解决方案8】:

        使用“--ignore-platform-reqs”

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

        【讨论】:

          【解决方案9】:

          根据我的想法,最好使用以下命令。 composer 需要 tymon/jwt-auth --ignore-platform-reqs

          【讨论】:

          • “更好”是什么意思?这不是该站点上至少三个其他答案的一部分的相同命令吗?请不要重复现有答案,除非您分享一些新见解
          猜你喜欢
          • 2016-09-16
          • 2019-05-22
          • 1970-01-01
          • 1970-01-01
          • 2020-05-08
          • 2018-11-28
          • 2021-06-20
          • 2017-06-10
          • 2020-05-11
          相关资源
          最近更新 更多