9

在将版本 3 用于几个项目后第一次使用 Laravel 4,但似乎根本无法让 Artisan 工作。我做了一堆搜索并按照我能找到但没有运气的故障排除步骤进行操作。

  • 我已经安装了 Mcrypt
  • 我没有要删除的 bootstrap/compiled.php 文件
  • 我有来自 Github 的最新版本的框架
  • 我正在使用最新版本的 Composer

当我尝试“作曲家更新”时,我收到此错误:

Script php artisan optimize handling the post-update-cmd event returned with an error: 

...没有额外的信息。

尝试运行“php artisan list”或任何其他工匠命令根本不会给我任何输出。

有任何想法吗?

4

6 回答 6

10

总结评论中的讨论,我们发现在php.ini级别添加日志记录会显示 Composer 控制台界面未报告的 PHP 错误。我想知道你是否以 root 身份安装了 Composer,因此 Laravel 所需的一些关键文件对于非特权用户实际上是不可见的。

于 2013-04-27T14:54:28.907 回答
2

I was getting this problem, and it was because the subdirectories of storage did not yet exist.

Of course, these directories are created by the project-creating script, but they're quite easy to leave out of source control and so will be missing on a freshly cloned project. The .gitignore files are in there for a reason it would seem!

于 2015-02-17T00:58:56.200 回答
2

如果您缺少 /bootstrap/start.php 文件,您不会从 artisan 获得有用的错误消息,并且 composer 会以相同的方式响应。我四处寻找我在网上找到的解决方案,最终发现这个文件丢失了。我一更换它就重新上线了。我发现我的 PHP 错误日志中缺少此文件,并且由于无法运行,因此 artisan 没有生成日志。

于 2013-12-05T21:28:29.840 回答
2

我有一个类似的问题。即使是命令$ php artisan --verson也不会产生任何输出。原来,我有一些代码在app/start/global.phpCLI 执行下被破坏(但在 web 端没有破坏)。

所以这是另一个检查东西的地方!( app/start/global.php)

于 2014-04-25T19:39:59.430 回答
2

运行 phpinfo 后,我注意到“--disable-mbregex”是 PHP 配置的一部分,这意味着 PHP 没有使用 mbregex 扩展名进行编译。我的错误日志显示“调用未定义函数 mb_regex_encoding”。

使用 mb_regex_encoding 重新编译 PHP 后,问题就消失了。

于 2013-08-13T04:51:16.093 回答
1

storage当文件夹中有当前用户不可写的文件时,我就出现了这个问题。php artisan默默地失败,没有输出。更改权限有所帮助。

于 2015-05-17T11:25:03.227 回答