安装Laravel Sanctum时Composer移除其他包该如何解决
安装Laravel Sanctum不删除原有依赖的操作方法
首先说明:你看到被移除的symfony/polyfill-php70属于PHP7.0及更低版本的兼容补丁包,Laravel 8要求PHP版本最低为7.3,正常运行环境下该包本身属于冗余依赖,composer自动清理属于常规的依赖优化行为。如果确实需要保留所有原有依赖,可按以下步骤操作:
- 第一步:仅将Sanctum依赖写入composer.json,不触发任何更新、移除操作
执行命令:composer require laravel/sanctum --no-update - 第二步:仅更新Sanctum及其直接依赖,不修改其他已安装包的版本
执行命令:composer update laravel/sanctum --with-dependencies
如果执行以上操作后仍出现依赖移除情况,可手动锁定PHP平台版本强制保留低版本兼容包:
- 打开项目根目录的
composer.json文件,找到config配置段 - 添加PHP版本锁定配置,示例:
"config": { "platform": { "php": "7.0.33" } }
- 保存后重新执行上述安装命令即可,composer会按照你指定的PHP版本判断依赖必要性,不会再移除低版本兼容包。
内容的提问来源于stack exchange,提问作者NewUser2
相关产品推荐
相关产品推荐

