作曲家更新之前,Laravel 4.2包括提供者

我写了一个自定义的Laravel模块,我将它包含在我的app.php中,如下所示:

    'providers' => array(
        'IlluminateFoundationProvidersArtisanServiceProvider',
        'IlluminateAuthAuthServiceProvider',
        'MyCustomProvider'
    );

每次我运行作曲家更新其摊位说我的课程在不可用:

Error Output: PHP Fatal error:  Class MyCustomProvider  not found in ProviderRepository.php on line 157

必须有一种方法让我的提供者在应用程序配置中,并且仍然能够运行作曲家更新,否则它真的很难自动部署我的代码?

编辑我现在正在做的是评论来自app.php的提供者,运行作曲家更新,然后重新启用提供者,一切运行正常。

编辑这里是我的bootstrap / start.php环境

$env = $app->detectEnvironment(array(
    // Dev environments
    'dev' => array('dev.xxx.com'),

    // Live server catch
    'live'  => array('live.xxx.com'),

    // EU Server catch
    'eu.west.1.live' => array('eu-west-1.xxx.com'),

    // US server catch
    'us.west.1.live' => array('us-west-1.xxx.com'),

    // Local test environments
    'chris' => array('outrunthewolf-MacBook-Air', 'e7180623aa2e', 'precise64'),

    // Local catch
    'dev' => array('*')
));

还有我的作曲家自动加载

    "autoload": {
    "classmap": [
        "app/commands",
        "app/database/migrations",
        "app/database/seeds",
        "app/tests"
    ],
    "psr-4": {
        "": "app/controllers/",
        "": "app/libraries/",
        "Model": "app/models/"
    }
},

我想建议一些方法来解决这个问题。 1.请确保提供者名称中没有拼写错误,并且命名空间正如“注释”中的“Quasdunk”所建议的那样。 2.如果作曲家安装在您的机器上,请执行以下命令:

composer dump-autoload  

它会自动加载你的所有课程。 可能会帮助你。

链接地址: http://www.djcxy.com/p/88641.html

上一篇: Laravel 4.2 include provider before composer update

下一篇: Where can you put a Service Provider Class in Laravel?