我是一个新来CakePHP的。我配置CakePHP的外壳作为CakePHP的手册说,当我用命令蛋糕您好运行HelloShell,我得到了错误的信息如下:
Error: Shell class HelloShell could not be found.
1#G:\htdocs\cakedemo\lib\Cake\Console\ShellDispatcher.php(191):ShellDispatcher>_getShell('hello')
2#G:\htdocs\cakedemo\lib\Cake\Console\ShellDispatcher.php(69):ShellDispatcher->dispatch()
3#G:\htdocs\cakedemo\app\Console\cake.php(33):ShellDispatcher::run(Array) {main}
我的CakePHP的版本:
欢迎来到CakePHP的V2.2.0-β控制台
应用程序:控制台
路径:G:\ htdocs中\ cakedemo \程序\控制台\
任何人谁是有帮助的可以给我一个建议,呼吁。
还有就是你的错误。 你应该总是在执行蛋糕控制台您的应用程序路径。
...app/>../lib/Cake/Console/cake MyShell
或(使用APP控制台文件夹):
...app/>Console/cake MyShell
和MyShell应该然后是...app/Console/Command/
。 这里的所有都是它的。
错误: Shell class HelloShell could not be found
出现的原因是:在错误的目录错字错误或运行命令。
解:
1.一种用于php.exe的,cake.exe设置路径
2.例如,我的蛋糕的网站根目录是:
C:\tools\xampp1.8.3\htdocs\cakephp-2.5.5
在创建新的文件夹中的文件C:\tools\xampp1.8.3\htdocs\cakephp-2.5.5\app\Console\Command\HelloShell.php
与内容:
class HelloShell extends AppShell {
public function main() {
$this->out('Hello world.');
}
}
3.打开CMD,类型:
cd /d C:\tools\xampp1.8.3\htdocs\cakephp-2.5.5\app
cake hello
我们使用hello
在命令行调用HelloShell
类,因为“约定优于配置”。
参考: http://book.cakephp.org/2.0/en/console-and-shells.html#creating-a-shell
请确保你给饼夹路径/var/www/html/Console/cake.php的ini_set( 'include_path中',$根。PATH_SEPARATOR。 '蛋糕'。$ DS。 'LIB'。PATH_SEPARATOR。ini_get( 'include_path中') );
然后去根文件夹。 在我的情况下,位置将是/ var / www / html等/然后给shell文件名; 你好是我的壳的名字,那将是/ var / www / html等/控制台/蛋糕你好组合在一起的/ var / www / html等$在/ var / www / html等/控制台/蛋糕你好
你的壳将被执行。