composer 2.0 向下不兼容导致扩展安装出错
最近在部署服务器环境时,遇到一个由composer 版本向下不兼容而引起的问题,记录一下。
问题描述
后台api 应用是用thinkphp6.0的多应用模式开发的,起初部署时,总是提示找不到控制器。
当时就比较郁闷,怎么会找不到控制器呢?这个不同寻常通常只会在没有开启多应用模式时才会出现,可是明明已经开启了多应用模式,也安装了相关扩展(composer 2.0.x 执行 composer install 没有直接抛出不同寻常)。
合理合法我百思不解时,不经意间看到了我目前所使用的 composer 版本是2.0.x。
回头对比了一下我本地的版本1.8,google 一下才发现composer 2.0 系列是最近才发布的,于是马上就想到了是否是 composer 向下不兼容导致。
好家伙,真的是兼容性导致的问题
解决方案
既然是版本过高导致的兼容性问题,那就好办了,直接降低版本即可。
composer 降级非常简单,不用重新编译安装,直接使用以下命令即可
composerself-update1.8.0要是你不明白有哪些版本可以考虑选择,可以查看官方的发布历史。