php - Laravel 6 : FatalThrowableError: Class 'GuzzleHttp\Client' not found in TransportManager. PHP

标签 php composer-php guzzle mailgun laravel-6

我刚刚将我的应用程序更新到 Laravel 6。

我正在通过 Mailgun 发送电子邮件,在我的本地环境中,我已确认一切正常。

但是在登台时我收到以下错误:

Symfony\Component\Debug\Exception\FatalThrowableError: Class 'GuzzleHttp\Client' not found in /my/directory/laravel/vendor/laravel/framework/src/Illuminate/Mail/TransportManager.php:193

我已经运行了 composer require guzzlehttp/guzzle 并三次检查它是否位于我的 vendor 文件夹和 autoload 文件中登台服务器。

我的电子邮件是通过队列发送的。我从 Controller 方法调用了 Guzzle,发现它没有问题,但由于某种原因,当队列作业运行时,TransportManager 无法访问它。

同样,在我本地的宅基地环境中,电子邮件是通过 mailgun 发送的,没有任何错误。

我已经完成了artisan cache:clearartisan config:clear

我想不出还有什么可以尝试的。知道是什么原因导致了这个问题吗?

最佳答案

弄清楚了...Laravel 队列使用了一些我不知道的代码缓存魔法。因此,我的队列使用的是运行 composer require guzzlehttp/guzzle 之前的旧代码。

为了解决这个问题,我必须运行php artisanqueue:restart

然后我等待调度程序重新运行 php artisanqueue:work,我的电子邮件现在已按预期发送。

关于php - Laravel 6 : FatalThrowableError: Class 'GuzzleHttp\Client' not found in TransportManager. PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59581688/

相关文章:

php - 如何向 GuzzleHTTP 请求对象添加身份验证以进行异步处理

php - ZF + 学说 2 : Heavy model classes or Lightweight model + Service layer?

php - 根路径不适用于 php include

composer-php - 在 Composer 中从更新中排除包

php - 无法更新 Composer ,收到弃用通知

symfony2.1.7 Composer 安装 KnpPaginatorBundle

php - 使用 Laravel 和 Guzzle 访问 JSON 中的数据数组

PHP Guzzle 获取请求

PHP:有一个现有的二维数组并想从 mySQL 查询中添加另一列

php - '<?=' 在 PHP 中是什么意思?