未定义的方法 Laravel\Lumen\Application::booted()

Posted

技术标签:

【中文标题】未定义的方法 Laravel\\Lumen\\Application::booted()【英文标题】:Undefined method Laravel\Lumen\Application::booted()未定义的方法 Laravel\Lumen\Application::booted() 【发布时间】:2020-01-25 20:03:08 【问题描述】:

使用 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 包中的版本来修复它。 【参考方案1】:

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

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

【讨论】:

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

以上是关于未定义的方法 Laravel\Lumen\Application::booted()的主要内容,如果未能解决你的问题,请参考以下文章

jni报错日志打印方法未定义

Laravel 调用未定义的方法。方法存在

对结构方法的未定义引用[重复]

服务中的方法在执行时未定义,但在登录到控制台时未定义

未定义的方法和未初始化的常量错误

方法未定义为类