Php Behat和laravel 5.5:类哈希不存在
我一直在Php Behat和laravel 5.5:类哈希不存在,php,laravel,laravel-5,behat,Php,Laravel,Laravel 5,Behat,我一直在 In Container.php line 752: Class hash does not exist 当我在laravel 5.5项目上运行behat时 我有PHP7.1、ubuntu 16.04和“behat/behat”:“^3.5”, 我的同事似乎没有这个问题,只有我。个人电脑特有的问题 我尝试了composer dump autoload和php artisan cache:clear,没有任何效果如果我运行下面的命令,一切运行顺利,并且没有看到任何错误,不确定这是
In Container.php line 752:
Class hash does not exist
当我在laravel 5.5项目上运行behat时
我有PHP7.1、ubuntu 16.04和“behat/behat”:“^3.5”,
我的同事似乎没有这个问题,只有我。个人电脑特有的问题
我尝试了
composer dump autoload
和php artisan cache:clear
,没有任何效果如果我运行下面的命令,一切运行顺利,并且没有看到任何错误,不确定这是否是修复
/vendor/bin/behat--tags=Ready
根据我的经验,这种错误来自错误构建的缓存。
您需要重新创建缓存。
首先,确保您的所有软件包都已准备好使用:
现在从“bootstrap/cache”中删除“packages.php”、“services.php”、“config.php”,然后运行:
这将在该目录中生成新文件。如果在运行该命令后出现错误,那么您的“config/*.php”文件中可能有错误。找到这个问题,修复并再次运行“config:cache”Laravel的
Hash
类有一个大写的H,这对于像Linux/Mac这样的区分大小写的文件系统很重要。找到你在哪里做了类似于hash::make
的事情,并将其更改为hash::make
@ceejayoz I在vscode中添加了一个ctrl+shift+f
,这意味着我在所有文件中搜索了该字符串,没有找到任何字符串php artisan config:clear
。如果这不起作用,请在引导/cache
@adam中删除packages.php
,完成所有操作,什么都不起作用,问题是是否需要为beehat提供路径?因为如果我在上面所示的laravel中运行它,它将不起作用,但是如果我执行/vendor/bin/behat测试
它将起作用。我确实在bootstrap/cache/services.php中找到了字符串'hash'
:'hash'=>'illighted\\Hashing\\HashServiceProvider',
composer install
composer dump-autoload
php artisan config:cache