1

Quick DeployまたはのLaravel ForgeDeploy内で、デプロイ ログ内に次のエラーが表示されます。

Generating autoload files
PHP Fatal error:  Class 'Illuminate\Support\Arr' not found in
/home/forge/default/vendor/laravel/framework/src/Illuminate/Support/helpers.php
on line 182

PHP Stack trace:
PHP   1. {main}() /home/forge/default/artisan:0
PHP   2. require_once() /home/forge/default/artisan:30
PHP   3. Illuminate\Foundation\Application->detectEnvironment() /home/forge/default/bootstrap/start.php:33
PHP   4. Illuminate\Foundation\EnvironmentDetector->detect() /home/forge/default/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:262
PHP   5. Illuminate\Foundation\EnvironmentDetector->detectConsoleEnvironment() /home/forge/default/vendor/laravel/framework/src/Illuminate/Foundation/EnvironmentDetector.php:18
PHP   6. Illuminate\Foundation\EnvironmentDetector->getEnvironmentArgument() /home/forge/default/vendor/laravel/framework/src/Illuminate/Foundation/EnvironmentDetector.php:68
PHP   7. array_first() /home/forge/default/vendor/laravel/framework/src/Illuminate/Foundation/EnvironmentDetector.php:89

Environment Variables私は、環境検出を含め、私の知る限り正しいアプリケーションをセットアップしました。

$env = $app->detectEnvironment(
array( 

     'development' => array('Thor','localhost'), 
     'production' => array('Removed for security')
));

実際の Web サイトでは、デプロイが (明らかに!) 行われると、次のエラー ログが表示されます。

ウェブサイトのエラー

私の完全なstart.phpコードは次のとおりです。

<?php

$app = new Illuminate\Foundation\Application;

$env = $app->detectEnvironment(
    array( 

         'development' => array('Thor','localhost'), 
         'production' => array('removed for security')
    ));

$app->bindInstallPaths(require __DIR__.'/paths.php');

$framework = $app['path.base'].'/vendor/laravel/framework/src';

require $framework.'/Illuminate/Foundation/start.php';

return $app;

どんな助けでも大歓迎です。

4

1 に答える 1

0

あなたのlaravelシステムはクラスをインスタンス化しようとしているようですがIlluminate\Support\Arr、それを試みてもクラスが見つからず、PHPは致命的な例外で失敗します.

この問題をデバッグするための最初のステップは、

  1. クラスファイルが本来あるべき場所にあることを確認してください

  2. クラス名とパスがファイル名と一致していることを確認してください

クラスIlluminate\Support\Arrは通常住んでいます

vendor/laravel/framework/src/Illuminate/Support/Arr.php

と名前で定義されていますArr

class Arr { ... } 

ステップ 1 では、このファイルが存在することを確認し、実際にクラスを定義します。

于 2014-09-01T21:09:34.560 に答える