答案是“Package not found”主因是本地缓存的packages.json元数据过期(默认15分钟不刷新),非网络或ZIP损坏;需精准删除对应镜像的provider缓存子目录(如https---mirrors-aliyun-com-composer),并验证镜像同步状态、检查项目级repositories覆盖、临时切官方源确认,再清vendor与lock文件重装。

“Package not found”不是缓存损坏,而是元数据过期
Composer 报 Package not found 或 Could not find a matching version,90% 以上不是 ZIP 包损坏,也不是网络连不上,而是本地缓存的 packages.json 还在用 15 分钟前的老快照——它根本没去镜像站拉新数据,就直接判定“没这个包”。composer clear-cache 默认不强制刷新元数据,所以清完还是找不到。
删对目录才能真正刷新 packages.json
必须手动删掉对应镜像源的 provider 缓存子目录,否则 Composer 会继续读过期文件:
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 查当前镜像地址:
composer config --global repo.packagist(注意是repo.packagist,不是repositories) - Linux/macOS:删
~/.composer/cache/repo/https---mirrors-aliyun-com-composer(把 URL 中的/替成-) - Windows:删
%APPDATA%\Composer\Cache\Repo\https---mirrors-aliyun-com-composer - 删完立刻跑
composer update --dry-run -v,看到日志里出现Downloading https://...才算生效
别跳过验证步骤,否则白删
删缓存前不确认问题根源,等于重装系统却不查蓝屏原因:
- 先打开浏览器访问
https://packagist.org/packages/vendor/name,确认包真实存在 - 再访问镜像对应路径,比如
https://mirrors.aliyun.com/composer/p/vendor/name.json,看是否 404(同步延迟) - 运行
composer config --global repos.packagist检查是否被项目级repositories字段静默覆盖 - 临时切回官方源验证:
composer config --global repo.packagist composer https://packagist.org,再composer require vendor/name -vvv
清完缓存后还要处理 vendor 和 lock 文件
光删 cache 不够,因为 vendor/composer/installed.json 和 composer.lock 仍记录着旧版本约束:
- 删掉整个
vendor/目录 - 删掉
composer.lock - 再执行
composer install或composer require vendor/name - 如果之前用过
--stability=dev或改过minimum-stability,记得检查composer.json里是否残留了影响全局的配置

















