Laravel Scout 安装后出现错误"Undefined class constant 'VERSION'" Guzzle



我正在使用Laravel 5.6.*和Laravel Scout ^7.1与Algolia进行一个项目,我刚刚安装了Guzzle 7.0。

Scout和Algolia以前工作得很好,但现在当我试图保存一个模型时,我在Sentry中遇到了一个错误,看起来像这样:

SymfonyComponentDebugExceptionFatalThrowableError
Undefined class constant 'VERSION'

通过观察《哨兵》中的细节,我发现这与Guzzle有关。错误源自文件:

/vendor/algolia/algoliasearch-client-php/src/Support/UserAgent.php in AlgoliaAlgoliaSearchSupportUserAgent::getDefaultSegments at line 50

代码看起来是这样的:

if (interface_exists('GuzzleHttpClientInterface')) {
$segments['Guzzle'] = GuzzleHttpClientInterface::VERSION;
}

GuzzleHttpClientInterface::VERSION似乎是导致错误的原因。不知道该怎么办。我是否安装了不兼容版本的Guzzle或其他什么?我可以配置Scout告诉它不要尝试使用Guzzle,并默认为我安装它之前它正在做的任何事情吗?

编辑:我想如果我更新Scout可能会解决这个问题,所以我运行了composer update laravel/scout。不过还是犯了同样的错误。

第二版:继续前进,刚刚用Composer更新了所有内容。这个错误现在似乎已经解决了。只是重新创建了它,没有再次出现错误。

请参阅原始文章中的第二次编辑。Composer更新全部修复了问题。

相关内容

最新更新