Doctrine生成实体中止

时间:2017-07-04 06:29:09

标签: php symfony doctrine

当我尝试执行命令

php bin\console doctrine:generate:entity

我把我的捆绑包的名称,我想要的配置类型,在我的情况下是yml,但是在插入实体的第一个属性的名称时,控制台开始输出消息

New field name (press <return> to stop adding fields): Aborted

在我不使用组合 ctrl + c 之前,控制台不会停止打印此消息。

这里有一个同样问题的问题: Doctrines automatically aborted in Symfony。 在那个问题中,有人说这是stty和stdin的问题,但没有人解释如何解决它。

更新: 在Symfony中,有两个函数返回RuntimeException,并显示消息Aborted。两者都在QuesionHelper类中。第一个函数是getHiddenResponse,第二个函数是readFromInput。我想第二个函数是返回错误,但我不知道为什么,我还没有能够调试它,但我认为选项是:

  1. if返回false的条件和函数fgets也返回false。在这种情况下,变量$ stream不等于STDIN或函数readline不存在
  2. 函数readLine不起作用。
  3. 这是readFromInput函数的代码:

     private function readFromInput($stream)
    {
        if (STDIN === $stream && function_exists('readline')) {
            $ret = readline();
        } else {
            $ret = fgets($stream, 4096);
        }
    
        if (false === $ret) {
            throw new RuntimeException('Aborted');
        }
    
        return trim($ret);
    }
    

0 个答案:

没有答案