【问题标题】:Undefined method Laravel\Lumen\Application::booted()未定义的方法 Laravel\Lumen\Application::booted()
【发布时间】:2026-02-17 21:00:01
【问题描述】:

使用 Lumen 而不是 Laravel,我知道这个包应该与 Lumen 一起使用,因为我已经将它安装在另一个也是 Lumen 的微服务上。有人可以帮忙吗?

尝试注册社交名流服务商

$app->register(\SocialiteProviders\Manager\ServiceProvider::class);

当我受到欢迎时,

(1/1) Error
Call to undefined method Laravel\Lumen\Application::booted()

问题来自社交名流提供程序包中的此代码。

$this->app->booted(function () {
    $socialiteWasCalled = app(SocialiteWasCalled::class);

    event($socialiteWasCalled);
});

【问题讨论】:

  • 您使用的是什么版本的流明?您使用的 lumen 版本可能不支持该版本的软件包。
  • 你确定支持吗?我相信Lumen没有booted()回调函数,同样根据laracasts.com/discuss/channels/lumen/…
  • 认为我使用的是 5.8。他们的网站声明他们支持它。
  • 同样的问题。 Lumen 5.6 是我正在使用的版本。
  • 我设法通过降低socialiteproviders/manager 包中的版本来修复它。

标签: php laravel lumen


【解决方案1】:

该软件包中似乎存在 Lumen 支持的错误。最近有一个提交来解决这个问题 - https://github.com/SocialiteProviders/Manager/commit/09903d33429f9f6c0da32c545c036a3e18964bbf

你应该等到它发布,或者使用master 分支;但这不推荐。

【讨论】:

  • 不要认为这是问题所在。我已经尝试了该软件包的多个版本。