不能使用' Bake \ Shell \ CommonOptionsTrait' for command' common_options_trait'它不是Cake \ Console \ Shell的子类

时间:2017-10-15 18:00:12

标签: php shell cakephp cakephp-bake

我已经通过composer安装了cakephp 3.5并尝试使用cake bake设置迁移文件。但是得到了以下错误:

  

无法使用' Bake \ Shell \ CommonOptionsTrait' for command' common_options_trait'它不是Cake \ Console \ Shell的子类。在[C:\ xampp \ htdocs \ myproject \ vendor \ cakephp \ cakephp \ src \ Console \ CommandCollection.php,第65行]

除了烘烤之外,一切似乎都运行良好,包括默认的cakephp主页。我检查了tmp和logs文件夹是否可写,发现它们是可写的。我只是无法弄清楚导致这种异常的原因是什么?

以下详细信息可能有所帮助: -

1) CakePHP 3.5.3

2) PHP 7.0.21

还有一件事,每当我打电话给bake命令。它会创建名为" cli-error.log "的错误日志。在日志文件夹下。这是它记录的内容: -

  

2017-10-15 17:57:57错误:[InvalidArgumentException]无法使用' Bake \ Shell \ CommonOptionsTrait' for command' common_options_trait'它不是Cake \ Console \ Shell的子类。在第65行的C:\ xampp \ htdocs \ hellocake \ vendor \ cakephp \ cakephp \ src \ Console \ CommandCollection.php

     

堆栈追踪:

 #0 C:\xampp\htdocs\hellocake\vendor\cakephp\cakephp\src\Console\CommandCollection.php(85): Cake\Console\CommandCollection->add('common_options_...', 'Bake\\Shell\\Comm...')
 #1 C:\xampp\htdocs\hellocake\vendor\cakephp\cakephp\src\Http\BaseApplication.php(86): Cake\Console\CommandCollection->addMany(Array)
 #2 C:\xampp\htdocs\hellocake\vendor\cakephp\cakephp\src\Console\CommandRunner.php(120): Cake\Http\BaseApplication->console(Object(Cake\Console\CommandCollection))
 #3 C:\xampp\htdocs\hellocake\bin\cake.php(12): Cake\Console\CommandRunner->run(Array)
 #4 {main}

请帮忙。

1 个答案:

答案 0 :(得分:0)

这是最近修复过的错误:

<强> https://github.com/cakephp/cakephp/issues/11326

确保更新您的应用cakephp/bake依赖关系(一个简单的composer update应该这样做),以便您安装the lastest 1.4.4,以解决问题。