在JAVA 开发中,我们如果要使用一个第三方包,需要把它加入到构建路径中。
但是在laravel中,有这样一个功能:
扩展包发现
在 Laravel 应用程序的 config/app.php
配置文件中,providers
选项定义了应该被 Laravel 加载的服务提供者的列表。当有人安装你的扩展包时,你需要让你的服务提供者包含在这个列表里。而不是要求用户手动将你的服务提供者添加到这个列表里,你可能需要在你扩展包 composer.json
文件的 extra
部分的定义这些提供者。除了服务提供者,你也要列出可能想要注册的 facades:
"extra": {
"laravel": {
"providers": [
"Barryvdh\\Debugbar\\ServiceProvider"
],
"aliases": {
"Debugbar": "Barryvdh\\Debugbar\\Facade"
}
}
},
当 Laravel 安装的时候,一旦发现你的扩展包被配置,Laravel 将会自动的注册它的服务提供者和 facades,为扩展包的用户提供一个方便的安装体验。
有了这个,在使用包时就可以直接
use Debugbar;
而不用再在config/app.php
配置,或者是
use Barryvdh\Debugbar\Facade\Debugbar;
这么麻烦了。