开发拓展包 Provider 自动注册问题

最近在尝试将一款个人开发工具开发成 Laravel 拓展包,遇到了 Provider 自动加载的问题。
阅读 Laravel 5.8 中文文档-拓展包开发 得知,可以将服务提供者定义到扩展包中。
对比自己使用拓展包的体验,composer require 之后就可直接使用的拓展包,使用体验确实优秀很多。故希望实现自动引入 Provider 的功能。
参照 文档 及 诸个优秀拓展包修改了拓展包的 composer.json ,却无法实现自动引入的功能。手动在 config/app.php 中引入 Provider 的话,相应功能均已实现。请问这是哪里出了问题。 composer.json 内容如下

{
  "name": "curator/layui-blade",
  "description": "Quickly build the layui skeleton",
  "type": "library",
  "license": "MIT",
  "authors": [
    {
      "name": "Curator",
      "email": "mail@houyining.com"
    }
  ],
  "minimum-stability": "dev",
  "require": {
    "php": ">=7.0.0"
  },
  "autoload": {
    "classmap": [
      "src/"
    ],
    "psr-0": {
      "Curator\\LayuiBlade": "src/"
    }
  },
  "extra": {
    "laravel": {
      "providers": [
        "Curator\\LayuiBlade\\LayuiBladeServiceProvider"
      ]
    }
  }
}

忠诚,秩序,卓越,博爱,开拓

curator
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 3
Epona

composer dumpautoload 之后,可以看一下bootstrap/cache/packages.php文件里有没有你的包信息,如果没有说明哪里出错了

1周前 评论
curator (楼主) 1周前
curator
<?php

namespace Curator\LayuiBlade;

use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Route;

class LayuiBladeServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap services.
     *
     * @return void
     */

    public function boot()
    {
        // 指定视图目录
        $this->loadViewsFrom(__DIR__.'/views', 'layui-blade');

        // 发布配置资源
        $this->publishes([
            __DIR__.'/config/layui_blade.php' => config_path('layui_blade.php'),
        ]);
    }

    /**
     * Register services.
     * @return void
     */

    public function register()
    {
        // 加载路由文件
        Route::group([
            'middleware' => 'web',
        ], function () {
            $this->loadRoutesFrom(__DIR__.'/routes.php');
        });

        $this->app->singleton(LayuiBlade::class, function ($app) {
            return new LayuiBlade($app['config']['layui_blade']);
        });
    }
}
1周前 评论
Epona 1周前
curator (作者) (楼主) 1周前
大毛

试试这样

"psr-4": {
      "Curator\\LayuiBlade\\": "src/"
    }
1周前 评论
curator (楼主) 1周前

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

社区文档:

将托管在 packagist.org 和 github.com 的扩展包使用国内 CDN 加速
GitHub Laravel 扩展包 TOP 250
速查表方便快速查询框架功能,支持手机访问,支持中英文版本
Laravel 中文文档,由社区用户翻译和维护,将会保持一直更新
此文档的目的,就是为了提高技术团队的凝聚力、一致性和生产效率。
开发环境的部署,开发者工具的选择,适用于 Mac 和 Windows。
浓缩过后的精华
Laravel Nova 后台管理面板文档的中文翻译
Lumen 中文文档,由社区用户翻译和维护,将会保持一直更新
Laravel 下知名扩展包 Dingo API 的中文文档,Laravel API 开发必知必会