从 2.0.3 更新到 2.0.4 后,Yii 控制台命令在 windows 上停止工作
Yii console commands stopped working on windows after updating from 2.0.3 to 2.0.4
我刚刚更新到 Yii 2.0.4,现在我的自定义控制台命令不起作用。但是,默认的 Hello 仍然有效。
$ yii hello
hello world
$ yii kw
Error: Unknown command "kw".
$ ls commands
HelloController.php KWController.php
它在 2.0.3 之前就可以正常工作。
奇怪,因为它自己出现在 yii
命令中:
$ yii | grep hello
- hello This command echoes the first argument that you have entered.
hello/index (default) This command echoes what you have entered as the message.
$ yii | grep kw
- kw
我正在研究 windows。
问题可能与您的控制器名称有关...默认情况下,kw
命令会查找 KwController.php
而不会找到 KWController.php
如果您的文件系统区分大小写。
您可以通过重命名文件来解决这个问题,或者如果您不想这样做,请手动将控制器文件添加到 yii
文件中的 controllerMap
:
$application = new yii\console\Application($config);
$application->controllerMap['kw'] = 'console\controllers\KWController';
我刚刚更新到 Yii 2.0.4,现在我的自定义控制台命令不起作用。但是,默认的 Hello 仍然有效。
$ yii hello
hello world
$ yii kw
Error: Unknown command "kw".
$ ls commands
HelloController.php KWController.php
它在 2.0.3 之前就可以正常工作。
奇怪,因为它自己出现在 yii
命令中:
$ yii | grep hello
- hello This command echoes the first argument that you have entered.
hello/index (default) This command echoes what you have entered as the message.
$ yii | grep kw
- kw
我正在研究 windows。
问题可能与您的控制器名称有关...默认情况下,kw
命令会查找 KwController.php
而不会找到 KWController.php
如果您的文件系统区分大小写。
您可以通过重命名文件来解决这个问题,或者如果您不想这样做,请手动将控制器文件添加到 yii
文件中的 controllerMap
:
$application = new yii\console\Application($config);
$application->controllerMap['kw'] = 'console\controllers\KWController';