Laravel 5.6.26错误-未找到类'Tymon \ JWTAuth \ Providers \ LaravelServiceProvider'

Gor*_*ron 5 php laravel

仅供参考

我浏览了几个Web链接,发现了诸如更改/添加到composer.json文件的解决方案

"tymon/jwt-auth": "^0.5.12" 
"tymon/jwt-auth": "^1.0.0-beta.3" 
"tymon/jwt-auth": "^1.0.0-rc.2"
Run Code Online (Sandbox Code Playgroud)

使用LaravelServiceProvider / JWTAuthServiceProvider的app.php配置文件

providers => [
---
        Tymon\JWTAuth\Providers\LaravelServiceProvider::class,

        Tymon\JWTAuth\Providers\JWTAuthServiceProvider::class,
---
]
aliases => [
-----
'JWTAuth' => Tymon\JWTAuth\Facades\JWTAuth::class,
'JWTFactory' => Tymon\JWTAuth\Facades\JWTFactory::class,
-----
]
Run Code Online (Sandbox Code Playgroud)

composer update --no-scripts
composer update
Run Code Online (Sandbox Code Playgroud)

发布时:

php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"
Run Code Online (Sandbox Code Playgroud)

错误消息如下。

In ProviderRepository.php line 208:

  Class 'Tymon\JWTAuth\Providers\LaravelServiceProvider' not found
Run Code Online (Sandbox Code Playgroud)

下面的作曲家更新输出

$composer update

Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Conclusion: remove laravel/framework v5.6.26
    - Conclusion: don't install laravel/framework v5.6.26
    - Installation request for tymon/jwt-auth 1.0.0-beta.3 -> satisfiable by tymon/jwt-auth[1.0.0-beta.3].
    - Conclusion: don't install laravel/framework v5.6.1
    - Conclusion: don't install laravel/framework v5.6.0
    - tymon/jwt-auth 1.0.0-beta.3 requires illuminate/auth 5.1.* || 5.2.* || 5.3.* || 5.4.* -> satisfiable by illuminate/auth[5.1.x-dev].

    - Installation request for laravel/framework 5.6.* -> satisfiable by laravel/framework[5.6.x-dev].
Run Code Online (Sandbox Code Playgroud)

提前致谢。

Div*_*pal 9

下载包时出现问题 尝试运行

composer require tymon/jwt-auth:dev-develop --prefer-source
Run Code Online (Sandbox Code Playgroud)

并在您的 config/app.php 中将提供者设为

Tymon\JWTAuth\Providers\LaravelServiceProvider::class,
Run Code Online (Sandbox Code Playgroud)

还提供别名为:

'JWTAuth' => Tymon\JWTAuth\Facades\JWTAuth::class,
'JWTFactory' => Tymon\JWTAuth\Facades\JWTFactory::class,
Run Code Online (Sandbox Code Playgroud)

完成上述所有步骤后,发布您的供应商:

php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"
Run Code Online (Sandbox Code Playgroud)

并生成身份验证秘密: php artisan jwt:secret


Ama*_*mas 6

我遇到这个问题已经有一段时间了,这些答案都不适合我。在遇到问题后,我找到了解决方案。

如果您使用5.5 以上的 laravel,请尝试从下面的命令安装 jwt-auth :

composer require tymon/jwt-auth:dev-develop --prefer-source
Run Code Online (Sandbox Code Playgroud)

那么你就没有问题了


小智 5

将库添加到composer.json:

"require": {
    ...
    "tymon/jwt-auth": "1.0.0-beta.3"
    ...
 },
Run Code Online (Sandbox Code Playgroud)

在控制台中运行此命令:composer update

在config / app.php中添加提供程序:

'providers' => [
    ...
    Tymon\JWTAuth\Providers\LaravelServiceProvider::class,
    ...
],
Run Code Online (Sandbox Code Playgroud)

在同一文件“ config / app.php”中添加别名:

'aliases' => [
    ...
    'JWTAuth' => Tymon\JWTAuth\Facades\JWTAuth::class,
    'JWTFactory' => Tymon\JWTAuth\Facades\JWTFactory::class,
    ...
],
Run Code Online (Sandbox Code Playgroud)

然后在控制台中运行命令:php artisan vendor:publish --provider =“ Tymon \ JWTAuth \ Providers \ LaravelServiceProvider”下次运行:

php artisan jwt:secret
Run Code Online (Sandbox Code Playgroud)


Moh*_*ara 5

首先,由于您使用的是Laravel 5.6,因此需要具有此版本(1.0.0-rc.2作为最新的稳定版本),因此无需隐式地键入hint服务提供商或其外观的别名!图书馆本身将为您这样做。因此,请删除您添加到$providers$aliases数组中的内容。

然后确保运行:

composer dump-autoload -o

php artisan clear-compiled

如果您在Laravel上运行的版本低于5.6,请告诉我