Shopware 6.4升级至6.5/6.6时出现SensioFrameworkExtraBundle类找不到错误
解决Shopware 6.4升级至6.5/6.6后
SensioFrameworkExtraBundle找不到的问题 针对你遇到的PHP致命错误,尝试以下解决方案:
1. 强制重新安装所有Composer依赖
旧的依赖缓存或不完整的安装可能导致缺失文件,执行以下命令彻底重新安装:
rm -rf vendor/ composer.lock composer install --no-cache --prefer-dist
这会删除现有依赖和锁文件,重新从仓库拉取完整的兼容依赖包。
2. 清理残留的旧组件与配置
- 手动删除
vendor/sensio目录(如果存在),该包在Shopware 6.5中已被移除,残留文件会干扰自动加载。 - 检查
config/bundles.php文件,若存在Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle::class => ['all' => true]这一行,直接删除或注释掉。
3. 彻底清理所有缓存与临时文件
除了var/cache,还要清理其他生成文件:
rm -rf var/cache/ var/log/ var/sessions/ public/bundles/ composer dump-autoload -o
-o参数会优化自动加载器,提升类查找效率。
4. 排查插件兼容性问题
第三方或自定义插件可能仍依赖旧的Sensio包,导致冲突:
- 若能执行基础命令,运行
bin/console plugin:disable --all禁用所有插件,再测试bin/console是否正常。 - 若无法执行命令,直接修改数据库
plugin表,将所有插件的active字段设为0,重启服务后再尝试。 - 逐个启用插件,找到导致问题的插件后,更新该插件至兼容6.5的版本或暂时移除。
5. 核对PHP环境要求
确认PHP 8.2的扩展满足Shopware 6.5的要求,执行php -m检查以下扩展是否存在:
intlgdmysqlizipmbstring
缺失的扩展需安装并重启PHP服务。
内容的提问来源于stack exchange,提问作者MweisSW
相关产品推荐
相关产品推荐

