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

更新Symfony至v2.7.40后清缓存遇Twig类缺失错误,需更新其他库吗?

问题分析与解决方案

这个问题我之前帮别人排查过,核心原因是twig/extensions版本和Symfony 2.7自带的Twig版本不兼容,具体来说:

  • Symfony 2.7依赖的是Twig 1.x系列(类结构是Twig_Extension_Abstract这种下划线命名形式)
  • 你安装的twig/extensions ~1.5版本要求Twig 2.x+,而Twig 2.x已经改用了命名空间式的Twig\Extension\AbstractExtension,所以Symfony 2.7的代码尝试加载这个类时自然找不到。

具体解决步骤:

  1. 修改你的composer.json文件,把twig/extensions的版本约束改为适配Twig 1.x的范围,比如:

    "twig/extensions": "~1.4"
    

    或者更精确的^1.0.0到^1.4.0之间的版本都可以。

  2. 执行Composer更新命令,只更新twig/extensions及其依赖:

    composer update twig/extensions --with-dependencies
    
  3. 再次执行缓存清理命令:

    php app/console cache:clear
    

额外检查项:

  • 打开composer.lock文件,确认Twig的版本是1.x系列(比如1.38.x或1.39.x),如果有其他依赖强制拉取了Twig 2.x,需要调整那些包的版本约束,确保整体依赖和Symfony 2.7兼容。

内容的提问来源于stack exchange,提问作者Stev

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:15:47