我正在尝试让 beanstalk 启动并运行,并且在尝试运行 Queue::push() 时遇到异常:
Class 'Pheanstalk_Pheanstalk' not found
我已经运行了composer require pda/pheanstalk,甚至重新生成了我的自动加载文件。
它发生在 ./vendor/laravel/framework/src/Illuminate/Queue/Connectors/BeanstalkdConnector.php
有任何想法吗?
我正在尝试让 beanstalk 启动并运行,并且在尝试运行 Queue::push() 时遇到异常:
Class 'Pheanstalk_Pheanstalk' not found
我已经运行了composer require pda/pheanstalk,甚至重新生成了我的自动加载文件。
它发生在 ./vendor/laravel/framework/src/Illuminate/Queue/Connectors/BeanstalkdConnector.php
有任何想法吗?
在 composer.json 中,将 pda/pheanstalk 需求行替换为
"pda/pheanstalk": "2.0.*"
跑
composer update
警告:也会更新 Laravel。
来源: http: //laravel.io/forum/07-17-2014-class-pheanstalk-pheanstalk-not-found
漠视。在https://github.com/laravel/framework/issues/746找到了答案。显然最新的版本已经被重组或什么的。
你可能正在使用 pheanstalk 3,它在 Laravel 4 中对我不起作用。使用此命令切换到旧版本:
composer require pda/pheanstalk "~2.1"
如果您使用的是2.1.1之类的版本,并且如果您使用的是 namespace use Pheanstalk\Pheanstalk
,那么这可能是问题所在(对我来说)。版本 2.1.1 与 using namespaces 不兼容,因此您将删除该use ...
行,然后在启动 class type 的实例时Pheanstalk
,按如下方式执行:
$pheanstalkObject = new Pheanstalk_Pheanstalk('127.0.0.1');