我通过官方symfony-installer (http://symfony.com/download)安装了一个新的symfony3实例。在做完第一件事之后,我把这个项目提交给了Git,并在另一台计算机上克隆了它。在克隆之后,我运行"composer install“来安装所有symfony依赖项。现在问题来了:脚本ScriptHandler::clearCache
停止,并显示错误:Could not open input file: app/console
。没错-- symfony3有了一个新的目录结构--所以console
现在驻留在/bin
中,而不是/app
中。我如何告诉composer/项目使用新结构而不是旧结构?
我在这里(What is the new Symfony 3 directory structure?)读到了关于控制台命令SENSIOLABS_ENABLE_NEW_DIRECTORY_STRUCTURE=true
的信息,但它在我的例子中不起作用。
有什么建议吗?
发布于 2016-01-30 13:53:50
我也遇到了同样的问题。该脚本使用var目录的存在来决定是使用新的目录结构还是旧的目录结构。如果var存在,则使用新的目录结构。否则,它将使用旧结构。
默认的.gitignore文件阻止将var目录和bin目录添加到git中。
我为解决这个问题所做的是编辑项目目录中的.gitignore,使其如下所示:
/app/config/parameters.yml
/bin/*
/build/
/composer.phar
/vendor/
/web/bundles/
/var/*
!var/cache
/var/cache/*
!var/cache/.gitkeep
!var/logs
/var/logs/*
!var/logs/.gitkeep
!var/sessions
/var/sessions/*
!var/sessions/.gitkeep
!bin/console
!bin/symfony_requirements
/phpunit.xml
我并不自称是.gitignore方面的专家,所以我不确定这是不是最优雅的方式,但它对我来说是有效的。
发布于 2019-09-13 19:51:34
我也有同样的问题:
[RuntimeException]
An error occurred when executing the ""cache:clear --no-warmup"" command:
Could not open input file: app/console
我的控制台文件也在/bin/文件夹中,所以每次从DevOps克隆项目时,我都必须从项目的根目录调用它来清除缓存:
php bin/console cache:clear
之后,我可以运行composer install
,它工作得很好
https://stackoverflow.com/questions/34198591
复制相似问题