You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shopware 6.5.7.1主题命令报错E_USER_DEPRECATED求助

问题解决方法

一、处理UrlGenerator::getAbsoluteMediaUrl()废弃错误

  • 问题根源:Shopware 6.5.7.1正式标记Shopware\Core\Content\Media\Pathname\UrlGenerator::getAbsoluteMediaUrl()为废弃方法,你的自定义主题或依赖插件仍在直接调用该类实例。
  • 修复步骤:
    1. 修改主题代码:
      • 找到主题中依赖注入UrlGenerator的位置(通常在services.xml或PHP类构造函数里),将依赖类从Shopware\Core\Content\Media\Pathname\UrlGenerator替换为Shopware\Core\Content\Media\Pathname\AbstractUrlGenerator。
      • 示例修改:
        <!-- 原注入配置 -->
        <argument type="service" id="Shopware\Core\Content\Media\Pathname\UrlGenerator"/>
        <!-- 修改后 -->
        <argument type="service" id="Shopware\Core\Content\Media\Pathname\AbstractUrlGenerator"/>
        
        PHP代码中同理,类型声明改为AbstractUrlGenerator,调用getAbsoluteMediaUrl()的逻辑无需修改——该方法在抽象类中已定义。
    2. 排查第三方插件:
      • 若修改主题后错误仍存在,排查已安装的第三方插件,定位调用废弃方法的插件,联系开发者索要更新版本,或暂时禁用该插件验证问题。
    3. 清除缓存:
      • 执行命令:bin/console cache:clear,再重新运行theme:refresh或theme:compile。

二、处理plugin:refresh找不到composer.json的问题

  • 问题根源:var/cache/composer目录下的composer.json文件缺失,通常是缓存生成异常、目录权限不足导致。
  • 修复步骤:
    1. 创建缺失目录:
      • 手动创建var/cache/composer目录,命令行执行:mkdir -p var/cache/composer(Mac/Linux环境),或通过文件管理器直接创建。
    2. 重新生成自动加载缓存:
      • 执行命令:composer dump-autoload,该命令会重新生成Composer的自动加载配置,同时修复缓存目录下的相关文件。
    3. 检查目录权限:
      • 确保Mamp Pro运行的PHP用户对var目录有读写权限,执行命令:chmod -R 775 var(可根据服务器环境调整权限值,避免过度开放)。
    4. 强制清除缓存:
      • 直接删除var/cache目录下的所有内容,或执行命令:bin/console cache:clear --env=prod(生产环境),再重新运行plugin:refresh。

内容的提问来源于stack exchange,提问作者Magnus von Bromsen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 08:22:23