在laravel 5中访问composer自动加载文件

ari*_*kin 12 bind instance autoload laravel

尝试使用非Laravel包:https://packagist.org/packages/luceos/on-app

编辑composer.json来要求它并做作曲家安装,更新,然后dump-autoload -o.

这个包需要初始化:vendor/luceos/on-app/src/OnAppInit.php

哪个不是一个类,只有一个方法.但是当我尝试在服务提供者中绑定它时似乎没有加载它.云的版本是在OnAppInit.php中启动的,但是没有这样做,所以当然会出现"不支持版本"的错误.

我知道我错过了一个小细节,却找不到它.也许在服务提供商?

composer.json

"require": {
    "luceos/on-app": "~3.5"
"autoload": {
    "psr-4": {
        "Luceos\\OnApp\\": "vendor/luceos/on-app/src/"
Run Code Online (Sandbox Code Playgroud)

配置/ app.php

'providers' => [
    'App\Providers\OnAppServiceProvider',
Run Code Online (Sandbox Code Playgroud)

应用程序/提供者/ OnAppServiceProvider.php

public function register()
    {
            $this->app->bind('onapp', function($app)
                {
                    $hostname = 'http://cloud';
                    $username = 'email@foo.com';
                    $password = 'api_key';
                    $factory = new \OnApp_Factory($hostname, $username, $password);
                    $setting = $factory->factory('Settings')->getList();
                    return $setting;
                });
    }
Run Code Online (Sandbox Code Playgroud)

看起来像那里... vendor/composer/autoload_files.php

$vendorDir . '/luceos/on-app/src/OnAppInit.php',
Run Code Online (Sandbox Code Playgroud)

供应商/作曲家/ autoload_psr4.php

'Luceos\\OnApp\\' => array($vendorDir . '/luceos/on-app/src'),
Run Code Online (Sandbox Code Playgroud)

Cre*_*mbo 3

关于Guzzle问题:只需将其包含在您的composer.json文件中:

"guzzlehttp/guzzle": "~5.0"
Run Code Online (Sandbox Code Playgroud)

然后就用普通的就可以了

$client = new GuzzleHttp\Client();
Run Code Online (Sandbox Code Playgroud)

只是不要忘记composer dump-autoload