通过Scoop更新Symfony CLI版本不生效问题咨询
版本不一致的核心原因是系统同时存在两个Symfony CLI安装实例:你之前用二进制包安装的5.4.2版本,和Scoop安装的5.4.12版本。环境变量Path中旧二进制版的路径优先级更高,所以执行symfony命令时默认调用的是旧版本,才会出现Scoop提示已是最新版、运行命令却提示要更新的矛盾。你当前使用的PHP 8.1.6版本完全满足Symfony CLI运行要求,无需额外调整PHP配置。
方案一:卸载原有二进制版本,使用Scoop管理的Symfony CLI
- 定位旧版本安装路径:打开任意终端执行
where symfony,返回结果中排在第一行的路径就是当前系统默认调用的旧二进制版本所在位置,Symfony CLI官方二进制包默认安装路径一般为C:\Program Files\Symfony CLI\或当前用户目录下的AppData\Roaming\Symfony CLI\。 - 卸载旧版本:打开Windows「设置-应用-安装的应用」,搜索
Symfony CLI后点击卸载,按照引导走完卸载流程;也可以进入上一步定位到的旧版本安装目录,直接运行目录下的uninstall.exe完成卸载。 - 验证生效:关闭当前终端后重新打开,执行
where symfony,确认返回的路径为Scoop的shim路径(默认为C:\Users\<你的用户名>\scoop\shims\symfony.exe),再执行symfony version,若返回版本号为5.4.12即配置正常。 - 若路径优先级异常:直接打开系统环境变量编辑面板,在
Path变量中将Scoop的shims路径调整到所有Symfony相关路径的最前方,保存后重启终端即可。
方案二:保留原有二进制版本,直接更新到最新版
- 直接执行Symfony CLI自带的自更新命令
symfony self-update,等待执行完成即可将当前默认调用的旧二进制版本升级到最新稳定版。 - 更新完成后执行
symfony version,确认返回版本号为5.4.12即更新成功。 - 注意:如果选择该方案,后续执行
scoop update symfony-cli更新的版本不会被系统默认调用,长期使用建议卸载其中一个版本,避免后续出现版本冲突。
内容的提问来源于stack exchange,提问作者Gaga
相关产品推荐
相关产品推荐

