调用未定义的方法 Maatwebsite\Excel\Facades\Excel::create() - Laravel 5.3

Posted

技术标签:

【中文标题】调用未定义的方法 Maatwebsite\\Excel\\Facades\\Excel::create() - Laravel 5.3【英文标题】:Call to undefined method Maatwebsite\Excel\Facades\Excel::create() - Laravel 5.3调用未定义的方法 Maatwebsite\Excel\Facades\Excel::create() - Laravel 5.3 【发布时间】:2018-11-09 06:14:28 【问题描述】:

我正在使用 Maatwebsite Laravel Excel 导出 .xls 文档。 在我的“本地主机”中,它运行良好,但是当我尝试在生产中进行时,向我显示这个 f*$%#* 错误:

FatalThrowableError in Facade.php line 237:
Call to undefined method Maatwebsite\Excel\Facades\Excel::create()

我遵循以下所有安装说明:Laravel Excel

我也无法在生产环境中使用 SSH 运行“composer update”,因为进程被“杀死”...我不知道为什么。

我真的必须运行作曲家更新吗?这是为什么?

我使用的是 PHP 7.0 和 Laravel 5.3,所以我使用的是 Laravel Excel 2.1 版本,3 版本仅适用于 Laravel >5.5。

请帮帮我!

提前感谢您的帮助。

【问题讨论】:

composer install 运行正确吗? 是的,composer install 已正确运行... 尝试运行composer dump-autoload 我跑了,但错误还在继续…… 【参考方案1】:

我认为您没有在生产站点的 app.php 的 providers 数组中添加 Maatwebsite\Excel\Facades\Excel 外观字符串?

由于进程被终止,您无法运行 composer update,请参阅here 与更新相关的提示,了解与服务器更新相关的提示。

    在本地环境中运行 composer update(您的本地环境 物理机或开发虚拟机) 上传或 git push composer.lock 文件 在实时服务器上运行 composer install

【讨论】:

我将此添加到提供程序数组:Maatwebsite\Excel\ExcelServiceProvider::class,并将其添加到别名:'Excel' => Maatwebsite\Excel\Facades\Excel::class, 可能有问题,尝试运行作曲家更新或在服务器上上传完全相同的文件和与此包相关的其他内容。 谢谢!问题是...当我尝试运行“composer update”时,进程被“Killed”-_-' 我做到了...我已经在本地机器上运行了 composer update 。我通过 Filezilla 将 composer.lock 文件上传到服务器但是当我尝试运行“composer install”时 - 终端显示“编译的类文件已被删除”:\【参考方案2】:

已解决

    我运行了“php artisan config:clear”,错误变为:

[截图][1]

    我已经(再次)上传了我的“config/app.php”,然后它告诉我:

“权限被拒绝写入“引导/缓存”

    所以我“sudo chmod -R 777 /bootstrap”

谢谢。

【讨论】:

以上是关于调用未定义的方法 Maatwebsite\Excel\Facades\Excel::create() - Laravel 5.3的主要内容,如果未能解决你的问题,请参考以下文章

调用未定义的方法 App\Models\Catering::search() [关闭]

调用未定义的方法 BelongsTo::attach()

未调用自定义 UIButton 的 setIsSelected 方法

调用未定义的方法 Cake\ORM\Entity::query() CakePhp

致命错误:未捕获的错误:调用未定义的方法 stdClass::option();

调用类方法时出现“调用未定义函数”错误