0

我有一个 Symfony2 应用程序。在一个包中,我在 Command 文件夹中有一个命令类;然后,当我尝试执行时:

php app/console doctrine:database:[something]

我得到:

 [InvalidArgumentException]                                           
 There are no commands defined in the "doctrine:database" namespace. 

但是,如果我重命名命令文件夹(例如 Command_),则不会出现异常并且一切运行良好,问题是如果命令文件夹的名称不是“命令”,我将无法使用该命令。

这是可能的代码:

RunMigrationXCommand.php:

<?php
#!/usr/bin/env php

// app/console
use Symfony\Component\Console\Application;
use eCommerce\MigrationBundle\Command\MigrationXCommand;


$application = new Application();
$application->add(new MigrationXCommand);
$application->run();

和 MigrationXCommand.php:

class MigrationXCommand extends ContainerAwareCommand {

    protected function configure() {
        parent::configure();
        $this
                ->setName('migrationX')
                ->setDescription('Migration BBDD')
                ->addArgument(
                        'argument', InputArgument::OPTIONAL, 'What do you want to migrate?'
        );
    }

    protected function execute(InputInterface $input, OutputInterface $output) {
// ...
}

有什么修复吗?

4

0 回答 0