laravel扩展包服务提供者的注册的两种方式
一、
包自动发现
在 Laravel 应用的配置文件 config/app.php
中,providers
配置项定义了一个会被 Laravel 加载的服务提供者列表。当安装完新的扩展包后,在老版本中需要将扩展包的服务提供者添加到这个列表以便被 Laravel 使用。从 Laravel 5.5 开始,我们不必再手动添加服务提供者到该列表,而是将提供者定义到扩展包下 composer.json
文件的 extra
选项中,除了服务提供者之外,我们还可以以这种方式注册门面:
"extra": {
"laravel": {
"providers": [
"Barryvdh\\Debugbar\\ServiceProvider"
],
"aliases": {
"Debugbar": "Barryvdh\\Debugbar\\Facade"
}
}
},
定义好之后,在安装扩展包之后 Laravel 就会自动注册相应的服务提供者和门面,从而为扩展包使用者提供一个更加便捷的安装体验。
但是发现提供者里面要发布的选项在执行vendor:publish的时候没有显示
二、在config/app.php中直接添加解决
正心投入专注