在使用版本3进行一些项目之后,第一次玩Laravel 4,但似乎无法让Artisan工作。我做了很多搜索,然后按照我能找到的故障排除步骤进行操作,但没有运气。
当我尝试“composer update”时,我收到此错误:
Script php artisan optimize handling the post-update-cmd event returned with an error:
......没有额外的信息。
尝试运行“php artisan list”或任何其他工匠命令只是根本没有输出。
有什么想法吗?
答案 0 :(得分:9)
为了总结评论中的讨论,我们发现在php.ini
级别添加日志记录会显示Composer控制台界面未报告的PHP错误。我想知道你是否以root身份安装了Composer,因此Laravel所需的一些关键文件对于非特权用户来说实际上是不可见的。
答案 1 :(得分:2)
运行phpinfo之后,我注意到“--disable-mbregex”是PHP配置的一部分,这意味着PHP没有使用mbregex扩展编译。我的错误日志显示“调用未定义的函数mb_regex_encoding”。
使用mb_regex_encoding重新编译PHP后,问题就消失了。
答案 2 :(得分:2)
如果您缺少/bootstrap/start.php文件,则不会从工匠和作曲家那里得到有用的错误消息。我四处寻找我在网上找到的解决方案并最终发现这个文件丢失了。我一更换它就回到了网上。我发现我的PHP错误日志中缺少此文件,并且由于无法运行,工匠没有生成日志。
答案 3 :(得分:2)
我有类似的问题。即使命令$ php artisan --verson
也不会产生任何输出。事实证明,我在app/start/global.php
下有一些代码在CLI执行下打破了(但没有在网络上破坏)。
这是另一个检查东西的地方! (app/start/global.php
)
答案 4 :(得分:2)
我遇到了这个问题,原因是storage
的子目录尚不存在。
当然,这些目录是由项目创建脚本创建的,但是它们很容易被排除在源代码控制之外,因此在新克隆的项目中会丢失。 .gitignore
文件存在于其中,原因就在于它!
答案 5 :(得分:1)
当storage
文件夹中的文件无法为当前用户写入时,我遇到此问题。 php artisan
默默地失败,没有输出。更改权限有帮助。