使用 –no-cache 选项可强制 composer 重新下载包,如 composer install –no-cache;也可先执行 composer clear-cache 清除缓存后再安装;结合 –prefer-dist 或 –prefer-source 可指定下载类型;最彻底方式是手动删除 vendor 目录并清除缓存后重新安装。

Composer 默认会缓存已下载的包以提高安装速度,但在某些情况下你可能希望强制它从网络重新下载,而不是使用本地缓存。以下是几种有效的方法来实现这一点。
1. 使用 –no-cache 选项
这是最直接的方式。在运行 composer 命令时加上 –no-cache 参数,可以临时禁用缓存:
composer install –no-cache
这个命令会让 Composer 完全跳过本地缓存,所有依赖都会从远程仓库重新下载。
2. 清除现有缓存再安装
如果你想彻底清理旧缓存并重新开始,可以先清除缓存,再执行安装:
composer clear-cache 或 composer cache-clear
执行后,再运行:
composer install
虽然 Composer 可能仍会使用版本解析结果(如 composer.lock),但包文件会被重新获取。
3. 使用 –prefer-dist 或 –prefer-source 配合刷新
有时你希望强制重新下载 dist 包或源码,可以结合清除缓存使用:
例如强制从 dist 重新下载:
composer install –prefer-dist –no-cache
或者从源码克隆(适合开发中的包):
composer install –prefer-source –no-cache
4. 删除 vendor 和缓存目录手动重置
最彻底的方法是手动删除相关目录:
- 删除 vendor/ 目录
- 运行 composer clear-cache
- 重新执行 composer install
这样确保一切从头开始,不会复用任何旧文件。 基本上就这些方法。使用 –no-cache 是最简单且推荐的方式,无需改动项目结构即可强制重新下载。