我的Symfony 4.4应用程序是用Composer 1.x构建的。现在我需要切换到Composer 2。但我无法进行切换,因为Symfony CLI无论如何都使用Composer 1。
我已经安装了composer1和composer2:
# ls -la /usr/local/bin/ | grep composer
-rwxr-xr-x 1 root root 2354438 dic 31 18:06 composer
-rwxr-xr-x 1 root root 2000535 set 16 16:28 composer1
# /usr/local/bin/composer1 --version
Composer version 1.10.22 2021-04-27 13:10:45
# /usr/local/bin/composer --version
Composer version 2.2.3 2021-12-31 12:18:53
但当我运行symfony composer --version
时,它使用composer 1.x.
早在20年,Fabien就写过
对于Symfony CLI,运行Symfony composer会检查composer.lock文件中使用的composer版本,并尝试查找名为composer1或composer2的composer二进制文件。
所以问题是我需要更新应用程序的composer.lock
以使用composer2。尽管如此,我仍然找不到任何引用正在使用的composer版本。
因此,根据标题:如何更新我的composer.lock
以使用Composer 2?
好的,我通过反复试验发现了。这足以运行
# /bin/php7.4 /usr/local/bin/composer update
(这是composer2可执行文件(。
作曲家工作了它的魔力,现在我得到
# symfony composer --version
Composer version 2.2.3 2021-12-31 12:18:53