无法打开输入文件:app / console(Symfony 2)

时间:2015-12-02 14:46:57

标签: php symfony symfony-2.1 symfony-3.1

最近我开始使用Symfony2。不幸的是,php app / console命令在我的MAMP服务器上都不能用作Vagrant服务器(MAC OSX)。我尝试使用以下命令创建一个包

php app/console generate:bundle --namespace=Vendor/NameBundle

并尝试用

解决问题
php app/console assets:install web

这两个命令在我的终端中返回以下内容:

  

无法打开输入文件:app / console

有人知道如何解决这个问题吗?我正在我的项目目录中工作,如:mac / applications / mamp / htdocs / project但它仍然无法正常工作。我还试图重新安装一个新的symfony项目,但这不是一个修复。 我猜我的php在终端上根本不起作用......

3 个答案:

答案 0 :(得分:10)

所以问题是版本号。 Symfony 3.0版现已推出,因此,如果您未在项目安装中选择版本号,它将自动安装3.0版而不是2.7版。新命令是:

$ php bin/console generate:bundle --namespace=Vendor/NameBundle

而不是

$ php app/console generate:bundle --namespace=Vendor/NameBundle

答案 1 :(得分:3)

  1. php添加到Path环境变量中,以便您可以从命令行执行php
  2. (您可能需要在步骤1之后重新启动计算机)从命令行键入:php -version以测试是否已成功将php添加到path环境变量中
  3. 根据您拥有的Symfony版本,您需要执行php app/consolephp bin/console,其中consoleapp或{{1}内的php文件项目根目录中的目录。要检查要使用的命令,请查看项目目录,如果bin /目录存在,则执行bin,因为php bin/console位于该目录中。
  4. 从命令行,cd进入项目根目录并运行上面提到的相应命令。要检查您是否在正确的目录中,请运行console.php命令,如果显示所有Symfony项目目录:dir等,则app/, bin/, src/, vendors/命令应该成功运行。

答案 2 :(得分:0)

或者使用以下方法创建一个新的2.8.x symfony项目:

  

symfony new yourAppName 2.8

而不是:

  

symfony new yourAppName

(这将创建一个新的3.x symfony项目)

通过这种方式你可以使用:

  

php app / console