修改extra.symfony.require升级Symfony 5.2到5.3时报错如何解决?
报错原因
你的composer配置存在版本不匹配冲突:
- 你已在
extra配置项中将Symfony核心版本限制为5.3.*,同时手动升级了部分Symfony包到5.3版本(包括symfony/console、symfony/sendgrid-mailer、symfony/twig-bundle、symfony/debug-bundle等),这类5.3版本的Symfony包强制依赖同版本的symfony/framework-bundle。 - 但你composer.json中绝大多数Symfony核心包(包括冲突提示里的
symfony/framework-bundle)仍被锁定为5.2.*版本,无法满足高版本依赖包的要求,因此触发依赖解析报错。
解决步骤
- 批量替换composer.json中所有
symfony/*前缀依赖的版本号:将所有写死为5.2.*的Symfony相关依赖统一修改为5.3.*,覆盖包括require和require-dev节点下的所有Symfony核心包。 - 删除项目根目录下的
composer.lock文件和vendor目录,清除旧版本的依赖锁缓存。 - 执行更新命令:
composer update "symfony/*" --with-all-dependencies
- 更新完成后检查项目中是否存在Symfony 5.3废弃的用法,按提示调整对应代码、更新配方配置即可。
内容的提问来源于stack exchange,提问作者Bradmage
相关产品推荐
相关产品推荐

