Behat 和 laravel 5.5: Class 散列不存在

Behat and laravel 5.5: Class hash does not exist

我不断得到

In Container.php line 752:
  Class hash does not exist 

当我 运行 参与 laravel 5.5 项目时

我有 php 7.1、ubuntu 16.04 和 "behat/behat": "^3.5",

我的同事似乎没有这个问题,只有我。 PC 特定问题?

我尝试了 composer dump-autoloadphp artisan cache:clear,没有任何效果

如果我 运行 下面的命令,一切 运行 都很顺利,我没有看到任何错误,不确定这是否已修复。

/vendor/bin/behat --tags=Ready

根据我的经验,这种错误来自错误构建的缓存。 您需要重新创建缓存。 首先确保你所有的包都准备好使用:

composer install
composer dump-autoload

现在从 "bootstrap/cache" 和 运行 中删除 "packages.php"、"services.php"、"config.php":

php artisan config:cache

这将在该目录中生成新文件。如果您在 运行 执行该命令后收到错误消息,那么您的 "config/*.php" 文件中的某处可能有问题。找到那个,修复并再次 运行 "config:cache"

在应用程序文件夹中搜索“使用哈希;”

我发现了一个未被使用的电话,我刚刚将其删除,问题就消失了。