Вопрос по shell, cakephp – Оболочка Cakephp: класс оболочки HelloShell не найден

8

Я новичок в 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:

Welcome to CakePHP v2.2.0-beta Console

Приложение: Консоль

Path: G:\htdocs\cakedemo\app\Console\

Любой, кто может помочь, может дать мне совет, прошу.

Ваш Ответ

3   ответа
0

что вы указали путь к папке тортов в /var/www/html/Console/cake.php ini_set ("include_path", $ root. PATH_SEPARATOR. "Cake". $ ds. "lib". PATH_SEPARATOR. ini_get ("include_path"));

Затем перейдите в корневую папку. В моем случае местоположение будет / Var / WWW / HTML / затем дайте имя файла оболочки; привет мое имя оболочки, это было бы / var / www / html / Консоль / торт привет  объединяя вместе / var / www / html $ / var / www / html / Консоль / торт привет

Ваша оболочка будет выполнена.

2

Shell class HelloShell could not be found появляются потому что: опечатка ошибка или запустить команду в неправильном каталоге.

Solution:

1. Путь установки для php.exe, cake.exe

2. Например, мой корень сайта Cake:

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 класс, потому что "Соглашение по конфигурации".

enter image description here

Ссылка: http://book.cakephp.org/2.0/en/console-and-shells.html#creating-a-shell

хорошо, спасибо за ответ
Ответ существовал в течение длительного времени. Если ошибка происходит, это может быть вызвано несовпадением новых версий программного обеспечения / платформы / ОС. В настоящее время я не использую CakePHP.
Команда дает мне класс ошибок App не найден, поэтому я комментирую строку приложения, теперь она дает мне класс ошибок AppShell не найден, пожалуйста, помогите.
в моем случае // приложение :: использует («CakeEmail», «сеть / электронная почта»); require_once (& APOS; class.phpmailer.php & APOS;); класс UsersUpdateShell extends AppShell {public $ использует = массив ('LoanFile');
14

Вы всегда должны быть в пути APP для запуска консоли тортов.

...app/>../lib/Cake/Console/cake MyShell

или (используя папку консоли APP):

...app/>Console/cake MyShell

и MyShell должен быть в...app/Console/Command/. Thats all there is to it.

Вы правы, теперь я изменяю путь на: ..cakedemo \ app.и это работает. Спасибо за вашу помощь. LiveJin

Похожие вопросы