升级Magento 2.2.6至2.3.1执行composer update时遇依赖错误求助
解决Magento 2.2.6升级到2.3.1时Composer Update的依赖错误
这个问题我在帮客户升级老版本Magento的时候碰到过,本质是Composer版本和Magento 2.3.1的库存模块依赖不兼容导致的,下面给你具体的解决步骤:
错误根源分析
你看到的错误核心是:magento/inventory-composer-installer 1.1.0要求composer-plugin-api ^1.1,但你的Composer版本大概率是2.x(它的plugin-api版本是2.0),两者版本不匹配,所以Composer找不到符合要求的依赖包。
解决方案一:降级Composer到1.x版本(推荐)
Magento 2.3.1发布时,Composer 2.x还未被官方广泛支持,降级到1.x是最稳妥的解决方式:
- 执行命令降级Composer:
composer self-update --1 - 清空Composer缓存,避免残留的依赖冲突影响升级:
composer clear-cache - 重新执行升级命令:
composer update
解决方案二:在Composer配置中模拟兼容的plugin-api版本
如果你不想降级Composer,可以通过修改composer.json让Composer认为当前环境满足依赖要求:
- 打开项目根目录的
composer.json,找到config节点(如果没有则新增),添加platform配置:"config": { "platform": { "composer-plugin-api": "1.1.0" } } - 保存文件后,重新执行升级命令:
composer update
额外注意事项
- 升级前一定要备份代码和数据库,Magento升级容易出现意外情况,备份是最关键的兜底保障
- 检查
composer.json中的minimum-stability设置,确保它的值为stable,避免拉取到不稳定的依赖包
内容的提问来源于stack exchange,提问作者Raman
相关产品推荐
相关产品推荐

