Magento 2:1个例外:例外#0(ReflectionException)

时间:2018-07-27 01:13:53

标签: magento exception composer-php

我使用手动方法安装了一个名为Mageplaza Productslider的Magento扩展程序(将文件复制到应用程序/代码)。这看起来没有用,所以我使用composer安装了扩展程序:

composer require mageplaza/magento-2-product-slider)
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy

在任何页面上我仍然看不到该扩展名,因此我决定将其卸载。为此,我从应用程序/代码中删除了Mageplaza文件夹,并运行以下代码来卸载Mageplaza扩展和核心:

php bin/magento module:disable <ExtensionProvider_ExtensionName> --clear-static-content

现在在前端的Magento 2产品页面上以及尝试在管理面板中编辑产品时,出现以下错误。

1 exception(s):
Exception #0 (ReflectionException): Class 
Mageplaza\Productslider\Model\Slider\Source\FeaturedProducts does not exist

Exception #0 (ReflectionException): Class 
Mageplaza\Productslider\Model\Slider\Source\FeaturedProducts does not exist

要查看完整错误,请参阅(如果不允许链接,请删除吗?):

https://www.canvaspro.com.au/horse-canvas.html

我已采取以下措施来纠正该错误:

rm -rf var/cache/* var/di/* var/generation/* var/page_cache/* var/view_preprocessed/* pub/static/frontend/* vendor

composer install

php bin/magento setup:di:compile

当我删除了var和vendor文件夹时,在作曲家安装Magento之后仍要在应用程序/代码下调用这些文件怎么办?

谢谢

2 个答案:

答案 0 :(得分:0)

尝试

撰写者删除mageplaza / magento-2-product-slider

php bin / magento缓存:干净, php bin / magento设置:升级

php bin / magento设置:静态内容:部署-f

答案 1 :(得分:0)

感谢Dipesh,您的建议有所帮助,但未能解决问题,对于那些有类似问题的人,请参阅我的解决方法。

由于我没有使用composer安装此模块,因此尝试使用composer卸载会引发以下错误:

php bin / magento模块:卸载Mageplaza_Productslider Mageplaza_Productslider不是已安装的作曲家程序包

必须手动卸载模块,这涉及到编辑数据库,请按照以下步骤操作:

  • 禁用模块:php bin / magento模块:禁用Mageplaza_Productslider --clear-static-content
  • 请注意,在这种情况下,还需要禁用和删除Mageplaza_Core
  • 从app \ code \
  • 删除Module文件夹
  • 打开数据库并浏览到表setup_module,然后删除Mageplaza_Productslider和Mageplaza_Core行
  • 打开数据库表eav_attribute。在此处输入了Mageplaza_Productslider作为“特色产品”,这导致了我的错误。删除此表中的行。
  • php bin / magento设置:升级
  • php bin / magento缓存:刷新

以上之后,我还跑了:

  • rm -rf var / cache / * var / di / * var / generation / * var / page_cache / * var / view_preprocessed / * pub / static / frontend / *供应商
  • 作曲家安装
  • php bin / magento设置:di:compile
  • 我没有像在开发人员模式下那样部署静态内容,如果您不在开发人员模式下,那么请部署静态内容:php bin / magento setup:static-content:deploy
  • 设置文件权限:

查找var供应商pub / static pub / media app / etc -type f -exec chmod u + w {} \;

查找var供应商pub / static pub / media app / etc -type d -exec chmod u + w {} \;

这对我有用...希望它可以对其他人有所帮助!