为了账号安全,请及时绑定邮箱和手机立即绑定

加载不到已经在config/app.php里注册了的service provider,求助;

加载不到已经在config/app.php里注册了的service provider,求助;

PHP
暮色呼如 2019-03-06 03:27:19
这个是DbDocServiceProvider对应的代码: <?php namespace JeffcottLu\DbDoc; use Illuminate\Support\ServiceProvider; use JeffcottLu\DbDoc\Console\Commands\SyncTablesCommand; class DbDocServiceProvider extends ServiceProvider { /** * Bootstrap services. * * @return void */ public function boot() { $this->loadMigrationsFrom(__DIR__ . '/../database/migrations'); $this->loadViewsFrom(__DIR__ . '/views/', 'DbDoc'); //不能不发布就直接使用静态资源, $this->publishes([ __DIR__ . '/../public/' => public_path('vendor/db-doc') ], 'public'); $this->commands([SyncTablesCommand::class]); if (!$this->app->routesAreCached()) { require __DIR__ . '/web.php'; } } /** * Register services. * * @return void */ public function register() { $this->app->bind('command.db:db-doc', SyncTablesCommand::class); if ($this->app->runningInConsole()) { $this->commands([ 'command.db:db-doc' ]); } } } 发布包,找不到对应的包; 没有这个包对应的命令行: 直接访问路由,报错 自己在写的一个包,一直是好的,但是不知道什么时候,开始报错;找不到注册的service provider,自己搞了一会,实在没有解决问题的思路,求助; 如果上面的报错信息不够详细的话,希望您可以在这里JeffcottLu/tools看一下对应的文件;谢谢; 是缓存的问题; 但是我清了无数次缓存还是不行,直到把项目删掉之后重新checkout之后才解决问题,这种情况怎么避免呢?
查看完整描述

2 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

是开发模式还是生产?可能有缓存,在生产环境中,laravel会将所有配置文件缓存,便于加载,提升加载速度

查看完整回答
反对 回复 2019-03-18
?
婷婷同学_

TA贡献1844条经验 获得超8个赞

小老弟,你的做法太极端了吧,我看了你的项目,全部是以包引入的,引入包之后容器注入和解析都是需要消耗的,然而有些包只是一个api接口,你完全可以使用trait代替,或者建个工具文件夹,专门放一些api,以上纯个人见解

查看完整回答
反对 回复 2019-03-18
  • 2 回答
  • 0 关注
  • 787 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信