7

昨日から非常に奇妙な問題があります。運用サーバーで実行composer installすると、このエラーが発生します...ローカル サーバー (Homestead VM) ではエラーが発生しないことに注意してください。

Nothing to install or update
Writing lock file
Generating autoload files
Executing command (CWD): php artisan clear-compiled
Executing command (CWD): php artisan optimize
Generating optimized class loader
Compiling common classes
Script php artisan optimize handling the post-install-cmd event returned with an error



  [RuntimeException]
  Error Output:



Exception trace:
 () at phar:///home/site/public_html/composer.phar/src/Composer/EventDispatcher/EventDispatcher.php:177
 Composer\EventDispatcher\EventDispatcher->doDispatch() at phar:///home/site/public_html/composer.phar/src/Composer/EventDispatcher/EventDispatcher.php:91
 Composer\EventDispatcher\EventDispatcher->dispatchScript() at phar:///home/site/public_html/composer.phar/src/Composer/Installer.php:342
 Composer\Installer->run() at phar:///home/site/public_html/composer.phar/src/Composer/Command/InstallCommand.php:131
 Composer\Command\InstallCommand->execute() at phar:///home/site/public_html/composer.phar/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:257
 Symfony\Component\Console\Command\Command->run() at phar:///home/site/public_html/composer.phar/vendor/symfony/console/Symfony/Component/Console/Application.php:874
 Symfony\Component\Console\Application->doRunCommand() at phar:///home/site/public_html/composer.phar/vendor/symfony/console/Symfony/Component/Console/Application.php:195
 Symfony\Component\Console\Application->doRun() at phar:///home/site/public_html/composer.phar/src/Composer/Console/Application.php:146
 Composer\Console\Application->doRun() at phar:///home/site/public_html/composer.phar/vendor/symfony/console/Symfony/Component/Console/Application.php:126
 Symfony\Component\Console\Application->run() at phar:///home/site/public_html/composer.phar/src/Composer/Console/Application.php:83
 Composer\Console\Application->run() at phar:///home/site/public_html/composer.phar/bin/composer:43
 require() at /home/site/public_html/composer.phar:25


install [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--no-plugins] [--no-custom-installers] [--no-autoloader] [--no-scripts] [--no-progress] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [--ignore-platform-reqs] [packages1] ... [packagesN]

post-install-cmdそのため、いつ実行するように設定されているかにエラーが表示されるphp artisan optimizeようです...奇妙なことは、すべてをpost-install-cmd手動で実行すると、エラーが発生しないことです。

だから私は試しました:

  1. をしているcomposer selfupdate
  2. composer を削除して再インストールする
  3. グローバルなものの代わりに composer.phar を使用する
  4. やっているcomposer dumpautoload
  5. composer.lockファイルの削除
  6. すべてのキャッシュを削除するcomposer clearcache
  7. 、本番環境で実行composer update中(絶望的)

それでも同じエラーが発生します。あなたはなにか考えはありますか ?同様の問題をオンラインで見つけるためのキーワードが不足しています。

どうもありがとう

編集 :

また、サイトが正常に機能していることも言及されていません..閲覧時にエラーはありません。

編集2:

@marcanuy の提案に従って、ベンダー ディレクトリを削除してみました。その際、コンパイル済みおよびコンポーザーのキャッシュもクリアしました。Composerはすべてを再ダウンロード/インストールしました。それでも同じエラーが発生します。

編集3:

ということで、ここまで絞りました。APP_DEBUG を true に設定してもエラーは発生しません... false の場合、エラーが発生します。理由はありますか?

最終編集:

正しい方向に私を指摘してくれたベン・ジョンソンに感謝します...生のPHPログを確認しましたが、それらはlaravelログとは異なります(当然、それを考えるべきでした)。上記のエラー スタック内のファイルとは関係なく、奇妙なメモリ エラーが発生しました。

[02-Jun-2015 14:05:01 Europe/Paris] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 64 bytes) in /vendor/nikic/php-parser/lib/PhpParser/ParserAbstract.php on line 169

多田の瞬間の後。memory_limit を上げてcomposer installエラーなしで実行し、APP_DEBUG をオフにしました。

お世話になった皆様、どうもありがとうございました。

4

2 に答える 2

2

生の PHP ログを調べましたか?

Laravel のログには、PHP の生のエラー ログと同じ情報がすべて含まれているわけではないことに注意してください。Laravel を使用する場合、エラーが発生し、可視出力と Laravel ログが根本原因を明らかにしない場合は、生の PHP ログを常に確認してください。

Composer は、ロードして処理する PHP ファイルの気まぐれの影響を受けることに注意することも同様に重要です。これは、Composer とはまったく関係のない PHP ファイルで発生する可能性のあるあらゆるタイプのエラーが、Composer を失敗させる可能性があることを意味します。 、しばしば説明なし。ただし、根本的な原因はほとんどの場合、生の PHP ログで明らかになります。

スタック トレースの上部にある空のメソッド シグネチャは異常です。未加工の PHP ログを確認すると、異常な状態が存在し、composer.phar.

次にそこをチェックして、見つけたものをお知らせください。

于 2015-06-02T13:41:11.593 に答える