我正试图将我的项目从本地机器推送到实时服务器,在那里它运行良好。但当我将代码推送到生产机器并运行以下命令时:
composer update
它显示了以下错误:
> > php artisan clear-compiled
>
> [BadMethodCallException] Method after does not exist.
>
>
> Script php artisan clear-compiled handling the pre-update-cmd event
> returned with an error
>
> [RuntimeException] Error Output:
>
>
> update [--prefer-source] [--prefer-dist] [--dry-run] [--dev]
> [--no-dev] [--lock] [--no-plugins] [--no-custom-installers]
> [--no-autoloader] [--no-scripts] [--no-progress] [--with-dependencies]
> [-v|vv|vvv|--verbose] [-o|--optimize-autoloader]
> [-a|--classmap-authoritative] [--ignore-platform-reqs]
> [--prefer-stable] [--prefer-lowest] [-i|--interactive] [--root-reqs]
> [--] [<packages>]...
请帮忙!感谢
仅运行composer update
不会有帮助。。。
请尝试遵循此处的完整过程
在生产服务器上,您应该只运行composer install!这样可以避免您的错误。通过更新,您可以安装composer.json中所需的每个包的最新配置版本。通过安装,您可以在本地服务器上安装与您使用的版本完全相同的版本(存储在composer.lock文件中)。
好吧,这里失败的是php artisan clear-compiled
命令。最有可能的是,问题来自于您的应用程序何时启动。在某个地方,您的应用程序中有一个对方法after
的调用,该方法并不存在。请注意,该调用在ClearCompiledCommand
中不存在(事实上也不存在),而是在代码中的任何位置。