laravel - 调用未定义的方法 ComposerAutoloaderInitd7a72f88a86cf25d5563498a7179620e::getLoader()
问题描述
这是我访问我的网站时收到的消息:
Fatal error: Uncaught Error: Call to undefined method ComposerAutoloaderInitd7a72f88a86cf25d5563498a7179620e::getLoader()
in /home/vagrant/code/vendor/autoload.php:7
Stack trace: #0 /home/vagrant/code/public/index.php(34): require() #1 {main}
thrown in /home/vagrant/code/vendor/autoload.php on line 7
我在用
- 流行操作系统
- PHP 7.4.18
- 阿帕奇 2.4.41
- 流浪者 2.2.9
- Laravel 8.40.0
我发现了很多关于它的问题,但到目前为止没有任何效果。我试过:
- 检查生成的文件是否存在并运行(
dd
'd into it) composer dump-autoload
rm -rf vendor
,composer install
- 更改 PHP 版本 (8.0.x, 7.4.18)
- 删除所有缓存(composer 和 Laravel)
如果您对发生的事情有任何想法...谢谢!
编辑
我摧毁了虚拟机。在其他任何事情之前,我访问了该站点并收到消息说找不到会话表。好的。然后我跑了一个php artisan migrate:fresh --seed
,这是我收到的消息:
Fatal error: Uncaught Error: Call to undefined method Swift::registerAutoload() in /home/vagrant/code/vendor/swiftmailer/swiftmailer/lib/swift_required.php:13 Stack trace: #0 /home/vagrant/code/vendor/composer/autoload_real.php(71): require() #1 /home/vagrant/code/vendor/composer/autoload_real.php(61): composerRequiree92ff6905f8cf8863d20126d313557d0() #2 /home/vagrant/code/vendor/autoload.php(7): ComposerAutoloaderInite92ff6905f8cf8863d20126d313557d0::getLoader() #3 /home/vagrant/code/public/index.php(34): require('/home/vagrant/c...') #4 {main} thrown in /home/vagrant/code/vendor/swiftmailer/swiftmailer/lib/swift_required.php on line 13
刷新后它不会重新出现,但第一条消息再次弹出。
解决方案
尝试禁用 opcache
在 Ubuntu 中,您可以通过添加
opcache.enable=0
到/etc/php/7.4/fpm/conf.d/10-opcache.ini
或者对于您正在运行的任何 PHP 版本
编辑:您还需要重新启动 PHP
sudo service php7.4-fpm restart
推荐阅读
- c++ - 如何在 C++ 中实例化 Octave classdef 对象并调用其方法
- javascript - 将文件从外部 url 上传到 S3
- colors - 将白色背景批量更改为图像
- python - 使用 numpy 获取跨 x 轴的输入和返回点
- pyqt - 使用键盘键创建新窗口
- apache-spark - Spark PartitionByRange 和驱动程序内存
- flutter - Flutter:具有显式大小的子按钮填充容器大小
- python - 如何从 Alphavantage 获取字典字典的选定部分
- android - Android 内部测试导致 Google Play 商店出现缓存问题
- css - Webpack没有从Rails中的插件加载字体