如何将包添加到自定义laravel包?

如何将包添加到自定义laravel包?,laravel,guzzle,Laravel,Guzzle,我正在构建一个定制的Laravel包,它需要guzzlehttp/guzzle包。下面是我的composer.json文件: { "name": "lomse/awesomePackage", "description": "this an awesome package", "type": "library", "license": "MIT", "authors": [ { "name": "Selom", "email": "awesom

我正在构建一个定制的Laravel包,它需要
guzzlehttp/guzzle
包。下面是我的composer.json文件:

{
  "name": "lomse/awesomePackage",
  "description": "this an awesome package",
  "type": "library",
  "license": "MIT",
  "authors": [
    {
      "name": "Selom",
      "email": "awesome@gmail.com"
    }
  ],
  "minimum-stability": "dev",
  "require": {
    "guzzlehttp/guzzle": "^6.3"
  },
  "autoload": {
    "psr-4": {
      "Lomse\\AwesomePackage\\": "src/"
    }
  }
}
下面是我的
AwesomeProvider.php
文件的内容:

<?php

namespace Lomse\AwesomePackage;

use GuzzleHttp\Client;
use Illuminate\Support\ServiceProvider;

class AwesomeProvider extends ServiceProvider
{
    public function boot(){
    }

    public function register()
    {
        $this->app->singleton(Awesome::class, function ($app) {
            return new Awesome(new Client); //Class 'GuzzleHttp\Client' not found
        });
    }
}

所以,这很简单。我强调了解决这个问题需要采取的步骤。希望这能帮助有同样问题的人

  • 我不得不在Github上将我的代码推到回购
    lomse/awesome包中
  • 然后在
    /lomse/awome package/package.json
    config属性中指定
    preferred install
    dist

    “配置”:{ “首选安装”:“dist” }

  • 完整的代码是

    {
      "name": "lomse/awesome-package",
      "description": "this an awesome package",
      "type": "library",
      "license": "MIT",
      "authors": [
        {
          "name": "Selom",
          "email": "awesome@gmail.com"
        }
      ],
      "minimum-stability": "dev",
      "require": {
        "guzzlehttp/guzzle": "^6.3"
      },
      "autoload": {
        "psr-4": {
          "Lomse\\AwesomePackage\\": "src/"
        }
      },
      "config": {
        "preferred-install": "dist"
      }
    }
    
    在root
    package.json
    中,指定包的存储库,如下所示:

    "repositories": [
       {
          "type": "git",
          "url": "git@github.com:lomse/awesome-package.git"
       }
    ]
    
    还可以将包回购添加到package.json
    require
    属性,如下所示:

    "lomse/awesome-package": "dev-master"
    
    从根目录运行下面的代码以更新依赖项。这将把
    lomse/awome软件包
    repo克隆到您的供应商文件夹中,并安装软件包所需的任何其他依赖项:

    composer update -vvv
    
    -vvv
    用于调试目的


    编辑composer.json后是否运行了
    composer update
    ?是的。我甚至删除了供应商文件夹和composer.lock文件,然后运行composer dump autoload。